Fix bug discovered with address sanitizer.

Now, this works again with an empty stack.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178779 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp
index 1e0178e..d6aa6a9 100644
--- a/lib/Format/Format.cpp
+++ b/lib/Format/Format.cpp
@@ -927,11 +927,11 @@
     }
 
     // Remove scopes created by fake parenthesis.
-    unsigned VariablePos = State.Stack.back().VariablePos;
     for (unsigned i = 0, e = Current.FakeRParens; i != e; ++i) {
+      unsigned VariablePos = State.Stack.back().VariablePos;
       State.Stack.pop_back();
+      State.Stack.back().VariablePos = VariablePos;
     }
-    State.Stack.back().VariablePos = VariablePos;
 
     if (Current.is(tok::string_literal)) {
       State.StartOfStringLiteral = State.Column;