[Lldb-commits] [lldb] r202061 - LLDB now handles DW_TAG_unspecified_parameters nested inside function prototypes and we now mark the function prototypes as being variadic.

Greg Clayton gclayton at apple.com
Mon Feb 24 10:53:11 PST 2014


Author: gclayton
Date: Mon Feb 24 12:53:11 2014
New Revision: 202061

URL: http://llvm.org/viewvc/llvm-project?rev=202061&view=rev
Log:
LLDB now handles DW_TAG_unspecified_parameters nested inside function prototypes and we now mark the function prototypes as being variadic.

<rdar://problem/16149526> 


Modified:
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp?rev=202061&r1=202060&r2=202061&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp Mon Feb 24 12:53:11 2014
@@ -4199,6 +4199,7 @@ SymbolFileDWARF::ParseChildParameters (c
                                        const DWARFDebugInfoEntry *parent_die,
                                        bool skip_artificial,
                                        bool &is_static,
+                                       bool &is_variadic,
                                        TypeList* type_list,
                                        std::vector<ClangASTType>& function_param_types,
                                        std::vector<clang::ParmVarDecl*>& function_param_decls,
@@ -4350,6 +4351,10 @@ SymbolFileDWARF::ParseChildParameters (c
             }
             break;
 
+        case DW_TAG_unspecified_parameters:
+            is_variadic = true;
+            break;
+
         case DW_TAG_template_type_parameter:
         case DW_TAG_template_value_parameter:
             ParseTemplateDIE (dwarf_cu, die,template_param_infos);
@@ -6589,6 +6594,7 @@ SymbolFileDWARF::ParseType (const Symbol
                                               die,
                                               skip_artificial,
                                               is_static,
+                                              is_variadic,
                                               type_list,
                                               function_param_types,
                                               function_param_decls,

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h?rev=202061&r1=202060&r2=202061&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h Mon Feb 24 12:53:11 2014
@@ -364,6 +364,7 @@ protected:
                                 const DWARFDebugInfoEntry *parent_die,
                                 bool skip_artificial,
                                 bool &is_static,
+                                bool &is_variadic,
                                 lldb_private::TypeList* type_list,
                                 std::vector<lldb_private::ClangASTType>& function_args,
                                 std::vector<clang::ParmVarDecl*>& function_param_decls,





More information about the lldb-commits mailing list