diff options
Diffstat (limited to 'src/qml/compiler/qv4ssa.cpp')
-rw-r--r-- | src/qml/compiler/qv4ssa.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/qml/compiler/qv4ssa.cpp b/src/qml/compiler/qv4ssa.cpp index 7ea128d6ea..774d8fb88c 100644 --- a/src/qml/compiler/qv4ssa.cpp +++ b/src/qml/compiler/qv4ssa.cpp @@ -2212,10 +2212,14 @@ class TypeInference: public StmtVisitor, public ExprVisitor DiscoveredType type; bool fullyTyped; - TypingResult(const DiscoveredType &type = DiscoveredType()) - : type(type) - , fullyTyped(type.type != UnknownType) - {} + TypingResult(const DiscoveredType &type = DiscoveredType()) { +#if defined(__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ == 6 + // avoid optimization bug in gcc 4.6.3 armhf + ((int volatile &) this->type.type) = type.type; +#endif + this->type = type; + fullyTyped = type.type != UnknownType; + } explicit TypingResult(MemberExpressionResolver memberResolver) : type(memberResolver) , fullyTyped(true) |