Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 01c0831b4ca5001950197e3931dc8a38a5d65889..3001972eef2ebd95b0754fb5f9578a00e9a8cf4d 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -6636,7 +6636,12 @@ MaybeHandle<Object> JSObject::DefineAccessor(Handle<JSObject> object, |
if (is_observed) { |
if (is_element) { |
Maybe<bool> maybe = HasOwnElement(object, index); |
- ASSERT(maybe.has_value); |
+ // Workaround for a GCC 4.4.3 bug which leads to "‘preexists’ may be used |
+ // uninitialized in this function". |
+ if (!maybe.has_value) { |
+ ASSERT(false); |
+ return isolate->factory()->undefined_value(); |
+ } |
preexists = maybe.value; |
if (preexists && GetOwnElementAccessorPair(object, index).is_null()) { |
old_value = |