[Lldb-commits] [lldb] r219461 - Reverse out r219169 related to quote handling.

Todd Fiala todd.fiala at gmail.com
Thu Oct 9 18:11:39 PDT 2014


Author: tfiala
Date: Thu Oct  9 20:11:39 2014
New Revision: 219461

URL: http://llvm.org/viewvc/llvm-project?rev=219461&view=rev
Log:
Reverse out r219169 related to quote handling.

Addresses pr/21190 (http://llvm.org/bugs/show_bug.cgi?id=21190).

r219169 implemented this change list:
http://reviews.llvm.org/D5472 for more details.

Modified:
    lldb/trunk/include/lldb/Expression/ClangExpressionParser.h
    lldb/trunk/include/lldb/Target/Target.h
    lldb/trunk/source/Expression/ClangExpressionParser.cpp
    lldb/trunk/source/Expression/ClangFunction.cpp
    lldb/trunk/source/Expression/ClangUserExpression.cpp
    lldb/trunk/source/Expression/ClangUtilityFunction.cpp
    lldb/trunk/source/Interpreter/Args.cpp
    lldb/trunk/source/Target/Target.cpp

Modified: lldb/trunk/include/lldb/Expression/ClangExpressionParser.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Expression/ClangExpressionParser.h?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Expression/ClangExpressionParser.h (original)
+++ lldb/trunk/include/lldb/Expression/ClangExpressionParser.h Thu Oct  9 20:11:39 2014
@@ -52,7 +52,6 @@ public:
     //------------------------------------------------------------------
     ClangExpressionParser (ExecutionContextScope *exe_scope,
                            ClangExpression &expr,
-                           Args &expr_parser_compiler_args,
                            bool generate_debug_info);
     
     //------------------------------------------------------------------

Modified: lldb/trunk/include/lldb/Target/Target.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Target.h?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Target/Target.h (original)
+++ lldb/trunk/include/lldb/Target/Target.h Thu Oct  9 20:11:39 2014
@@ -113,12 +113,6 @@ public:
     
     void
     SetRunArguments (const Args &args);
-
-    bool
-    GetExprParserCompilerArguments (Args &args) const;
-
-    void
-    SetExprParserCompilerArguments (const Args &args);
     
     size_t
     GetEnvironmentAsArgs (Args &env) const;

Modified: lldb/trunk/source/Expression/ClangExpressionParser.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/ClangExpressionParser.cpp?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/source/Expression/ClangExpressionParser.cpp (original)
+++ lldb/trunk/source/Expression/ClangExpressionParser.cpp Thu Oct  9 20:11:39 2014
@@ -98,7 +98,6 @@ std::string GetBuiltinIncludePath(const
 
 ClangExpressionParser::ClangExpressionParser (ExecutionContextScope *exe_scope,
                                               ClangExpression &expr,
-                                              Args &expr_parser_compiler_args,
                                               bool generate_debug_info) :
     m_expr (expr),
     m_compiler (),
@@ -153,11 +152,6 @@ ClangExpressionParser::ClangExpressionPa
 
     // 3. Set options.
 
-    clang::CompilerInvocation::CreateFromArgs(m_compiler->getInvocation(),
-        expr_parser_compiler_args.GetConstArgumentVector(),
-        expr_parser_compiler_args.GetConstArgumentVector() + expr_parser_compiler_args.GetArgumentCount(),
-        m_compiler->getDiagnostics());
-
     lldb::LanguageType language = expr.Language();
 
     switch (language)

Modified: lldb/trunk/source/Expression/ClangFunction.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/ClangFunction.cpp?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/source/Expression/ClangFunction.cpp (original)
+++ lldb/trunk/source/Expression/ClangFunction.cpp Thu Oct  9 20:11:39 2014
@@ -238,9 +238,7 @@ ClangFunction::CompileFunction (Stream &
     if (jit_process_sp)
     {
         const bool generate_debug_info = true;
-        Args expr_parser_compiler_args;
-        jit_process_sp->GetTarget().GetExprParserCompilerArguments (expr_parser_compiler_args);
-        m_parser.reset(new ClangExpressionParser(jit_process_sp.get(), *this, expr_parser_compiler_args, generate_debug_info));
+        m_parser.reset(new ClangExpressionParser(jit_process_sp.get(), *this, generate_debug_info));
         
         num_errors = m_parser->Parse (errors);
     }

Modified: lldb/trunk/source/Expression/ClangUserExpression.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/ClangUserExpression.cpp?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/source/Expression/ClangUserExpression.cpp (original)
+++ lldb/trunk/source/Expression/ClangUserExpression.cpp Thu Oct  9 20:11:39 2014
@@ -527,9 +527,7 @@ ClangUserExpression::Parse (Stream &erro
     if (!exe_scope)
         exe_scope = exe_ctx.GetTargetPtr();
 
-    Args expr_parser_compiler_args;
-    target->GetExprParserCompilerArguments (expr_parser_compiler_args);
-    ClangExpressionParser parser(exe_scope, *this, expr_parser_compiler_args, generate_debug_info);
+    ClangExpressionParser parser(exe_scope, *this, generate_debug_info);
 
     unsigned num_errors = parser.Parse (error_stream);
 

Modified: lldb/trunk/source/Expression/ClangUtilityFunction.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/ClangUtilityFunction.cpp?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/source/Expression/ClangUtilityFunction.cpp (original)
+++ lldb/trunk/source/Expression/ClangUtilityFunction.cpp Thu Oct  9 20:11:39 2014
@@ -122,9 +122,7 @@ ClangUtilityFunction::Install (Stream &e
     }
     
     const bool generate_debug_info = true;
-    Args expr_parser_compiler_args;
-    target->GetExprParserCompilerArguments (expr_parser_compiler_args);
-    ClangExpressionParser parser(exe_ctx.GetBestExecutionContextScope(), *this, expr_parser_compiler_args, generate_debug_info);
+    ClangExpressionParser parser(exe_ctx.GetBestExecutionContextScope(), *this, generate_debug_info);
     
     unsigned num_errors = parser.Parse (error_stream);
     

Modified: lldb/trunk/source/Interpreter/Args.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/Args.cpp?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/source/Interpreter/Args.cpp (original)
+++ lldb/trunk/source/Interpreter/Args.cpp Thu Oct  9 20:11:39 2014
@@ -647,20 +647,6 @@ Args::ParseOptions (Options &options)
     }
     OptionParser::Prepare();
     int val;
-
-    // Before parsing arguments, insert quote char to the head of the string.
-    // So quoted arguments like "-l" won't be treated as option.
-    int argv_iter = 0;
-    for (auto args_iter = m_args.begin(); args_iter != m_args.end(); args_iter++, argv_iter++)
-    {
-        char quote_char = GetArgumentQuoteCharAtIndex(argv_iter);
-        if (quote_char != '\0')
-        {
-            *args_iter = std::string(1, quote_char) + *args_iter;
-            m_argv[argv_iter] = args_iter->c_str();
-        }
-    }
-
     while (1)
     {
         int long_options_index = -1;
@@ -710,23 +696,8 @@ Args::ParseOptions (Options &options)
             }
             else
             {
-                const char *value = OptionParser::GetOptionArgument();
-                if (value)
-                {
-                    // Remove leading quote char from option value
-                    argv_iter = 0;
-                    for (auto args_iter = m_args.begin(); args_iter != m_args.end(); args_iter++, argv_iter++)
-                    {
-                        if (*args_iter == value && GetArgumentQuoteCharAtIndex(argv_iter) != '\0')
-                        {
-                            *args_iter = args_iter->substr(1);
-                            value = args_iter->c_str();
-                            break;
-                        }
-                    }
-                }
                 error = options.SetOptionValue(long_options_index,
-                                               (def->option_has_arg == OptionParser::eNoArgument) ? nullptr : value);
+                                               (def->option_has_arg == OptionParser::eNoArgument) ? nullptr : OptionParser::GetOptionArgument());
             }
         }
         else
@@ -740,19 +711,6 @@ Args::ParseOptions (Options &options)
     // Update our ARGV now that get options has consumed all the options
     m_argv.erase(m_argv.begin(), m_argv.begin() + OptionParser::GetOptionIndex());
     UpdateArgsAfterOptionParsing ();
-
-    // Remove leading quote char from other arguments.
-    argv_iter = 0;
-    for (auto args_iter = m_args.begin(); args_iter != m_args.end(); args_iter++, argv_iter++)
-    {
-        char quote_char = GetArgumentQuoteCharAtIndex(argv_iter);
-        if (quote_char != '\0')
-        {
-            *args_iter = args_iter->substr(1);
-            m_argv[argv_iter] = args_iter->c_str();
-        }
-    }
-
     return error;
 }
 

Modified: lldb/trunk/source/Target/Target.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Target.cpp?rev=219461&r1=219460&r2=219461&view=diff
==============================================================================
--- lldb/trunk/source/Target/Target.cpp (original)
+++ lldb/trunk/source/Target/Target.cpp Thu Oct  9 20:11:39 2014
@@ -2672,7 +2672,6 @@ g_properties[] =
     { "breakpoints-use-platform-avoid-list", OptionValue::eTypeBoolean   , false, true                      , NULL, NULL, "Consult the platform module avoid list when setting non-module specific breakpoints." },
     { "arg0"                               , OptionValue::eTypeString    , false, 0                         , NULL, NULL, "The first argument passed to the program in the argument array which can be different from the executable itself." },
     { "run-args"                           , OptionValue::eTypeArgs      , false, 0                         , NULL, NULL, "A list containing all the arguments to be passed to the executable when it is run. Note that this does NOT include the argv[0] which is in target.arg0." },
-    { "expr-parser-compiler-args"          , OptionValue::eTypeArgs      , false, 0                         , NULL, NULL, "A list containing all the arguments to be passed to the expression parser compiler." },
     { "env-vars"                           , OptionValue::eTypeDictionary, false, OptionValue::eTypeString  , NULL, NULL, "A list of all the environment variables to be passed to the executable's environment, and their values." },
     { "inherit-env"                        , OptionValue::eTypeBoolean   , false, true                      , NULL, NULL, "Inherit the environment from the process that is running LLDB." },
     { "input-path"                         , OptionValue::eTypeFileSpec  , false, 0                         , NULL, NULL, "The file/path to be used by the executable program for reading its standard input." },
@@ -2721,7 +2720,6 @@ enum
     ePropertyBreakpointUseAvoidList,
     ePropertyArg0,
     ePropertyRunArgs,
-    ePropertyExprParserCompilerArgs,
     ePropertyEnvVars,
     ePropertyInheritEnv,
     ePropertyInputPath,
@@ -2977,20 +2975,6 @@ TargetProperties::GetRunArguments (Args
     return m_collection_sp->GetPropertyAtIndexAsArgs (NULL, idx, args);
 }
 
-void
-TargetProperties::SetExprParserCompilerArguments (const Args &args)
-{
-    const uint32_t idx = ePropertyExprParserCompilerArgs;
-    m_collection_sp->SetPropertyAtIndexFromArgs (NULL, idx, args);
-}
-
-bool
-TargetProperties::GetExprParserCompilerArguments (Args &args) const
-{
-    const uint32_t idx = ePropertyExprParserCompilerArgs;
-    return m_collection_sp->GetPropertyAtIndexAsArgs (NULL, idx, args);
-}
-
 void
 TargetProperties::SetRunArguments (const Args &args)
 {





More information about the lldb-commits mailing list