]> git.saurik.com Git - cycript.git/commitdiff
Magic identifiers can still be overridden by vars.
authorJay Freeman (saurik) <saurik@saurik.com>
Wed, 16 Dec 2015 00:37:09 +0000 (16:37 -0800)
committerJay Freeman (saurik) <saurik@saurik.com>
Wed, 16 Dec 2015 00:37:09 +0000 (16:37 -0800)
Replace.cpp

index e95f5e16f499d70dc755b956063b889a2e408751..9ffd0c1c5e6fa5a1f14736016904149e0b9ee4b3 100644 (file)
@@ -924,19 +924,9 @@ CYIdentifierFlags *CYScope::Declare(CYContext &context, CYIdentifier *identifier
     if (existing == NULL)
         return internal_;
 
-    switch (kind) {
-        case CYIdentifierArgument:
-        case CYIdentifierCatch:
-        case CYIdentifierMagic:
-            _assert(false);
-        default:
-            break;
-    }
-
-    if (existing->kind_ == CYIdentifierGlobal)
+    if (kind == CYIdentifierGlobal);
+    else if (existing->kind_ == CYIdentifierGlobal || existing->kind_ == CYIdentifierMagic)
         existing->kind_ = kind;
-    else if (kind == CYIdentifierGlobal)
-        ;
     else if (existing->kind_ == CYIdentifierLexical || kind == CYIdentifierLexical)
         _assert(false); // XXX: throw new SyntaxError()