Fixed a problem where we mistook normal result
authorSean Callanan <scallanan@apple.com>
Fri, 2 Nov 2012 22:28:08 +0000 (22:28 +0000)
committerSean Callanan <scallanan@apple.com>
Fri, 2 Nov 2012 22:28:08 +0000 (22:28 +0000)
variables for guard variables because the current
class or method named contained the letters "GV".

llvm-svn: 167327

lldb/source/Expression/IRForTarget.cpp

index e0342c9..967b2c4 100644 (file)
@@ -548,7 +548,7 @@ IRForTarget::CreateResultVariable (llvm::Function &llvm_function)
         const char *value_name = result_name_str.c_str();
         
         if (strstr(value_name, "$__lldb_expr_result_ptr") &&
-            !strstr(value_name, "GV"))
+            strncmp(value_name, "_ZGV", 4))
         {
             result_name = value_name;
             m_result_is_pointer = true;
@@ -556,7 +556,7 @@ IRForTarget::CreateResultVariable (llvm::Function &llvm_function)
         }
         
         if (strstr(value_name, "$__lldb_expr_result") &&
-            !strstr(value_name, "GV")) 
+            strncmp(value_name, "_ZGV", 4))
         {
             result_name = value_name;
             m_result_is_pointer = false;