From: Jay Freeman (saurik) Date: Tue, 5 Jun 2012 07:31:35 +0000 (-0700) Subject: Move scoping to CYDeclaration::Assignment from Replace. X-Git-Tag: v0.9.456~34 X-Git-Url: https://git.saurik.com/cycript.git/commitdiff_plain/dbe05dacd3d0cd9a418bee5a696b7b4b2f55f925?ds=sidebyside Move scoping to CYDeclaration::Assignment from Replace. --- diff --git a/Replace.cpp b/Replace.cpp index 3818c0b..c9f57b8 100644 --- a/Replace.cpp +++ b/Replace.cpp @@ -196,7 +196,9 @@ CYStatement *CYContinue::Replace(CYContext &context) { } CYAssignment *CYDeclaration::Assignment(CYContext &context) { + context.Replace(identifier_); CYExpression *variable(Replace(context)); + context.scope_->Declare(context, identifier_, CYIdentifierVariable); return initialiser_ == NULL ? NULL : $ CYAssign(variable, initialiser_); } @@ -205,8 +207,6 @@ CYStatement *CYDeclaration::ForEachIn(CYContext &context, CYExpression *value) { } CYExpression *CYDeclaration::Replace(CYContext &context) { - context.Replace(identifier_); - context.scope_->Declare(context, identifier_, CYIdentifierVariable); return $V(identifier_); }