<div dir="ltr">I reverted the revert because it caused other problems which I didn't see at first.  In the future please try to add new files to CMakeLists.txt.  We shoudln't be letting red bots linger for any significant amount of time, because it masks other failures (such as the lldb-mi failure I now have to figure out independently which was masked by the already-red bot due to this change)<br></div><br><div class="gmail_quote">On Tue Feb 17 2015 at 9:45:33 AM Zachary Turner <<a href="mailto:zturner@google.com">zturner@google.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Enrico,<br><br>I had to revert this as it has been causing linker errors on our Windows bots since last Thursday.<br><div><br></div><div><a href="http://lab.llvm.org:8011/builders/lldb-x86-win7-msvc/builds/725" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86-win7-msvc/builds/725</a><br></div><div><br></div><div>There was a merge conflict with the xcode workspace, I hope I resolved it correctly.  Sorry about this revert.  I believe the bots sent out failure messages, but please let me know if you did not receive one for whatever reason.</div></div><br><div class="gmail_quote">On Thu Feb 12 2015 at 3:24:04 PM Enrico Granata <<a href="mailto:egranata@apple.com" target="_blank">egranata@apple.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: enrico<br>
Date: Thu Feb 12 17:09:17 2015<br>
New Revision: 228975<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=228975&view=rev" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject?rev=228975&view=rev</a><br>
Log:<br>
I had recently added a new SBFrame::GetVariables() overload with yet another bool argument<br>
<br>
We talked about it internally - and came to the conclusion that it's time to have an options class<br>
<br>
This commit adds an SBVariablesOptions class and goes through all the required dance<br>
<br>
Added:<br>
    lldb/trunk/include/lldb/API/<u></u>SB<u></u>VariablesOptions.h<br>
    lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBVariablesOptions.i<br>
    lldb/trunk/source/API/<u></u>SBVariab<u></u>lesOptions.cpp<br>
Removed:<br>
    lldb/trunk/test/<u></u>functionalitie<u></u>s/data-<u></u>formatter/typedef_<u></u>array/<u></u>Makefile<br>
Modified:<br>
    lldb/trunk/include/lldb/API/<u></u>LL<u></u>DB.h<br>
    lldb/trunk/include/lldb/API/<u></u>SB<u></u>Defines.h<br>
    lldb/trunk/include/lldb/API/<u></u>SB<u></u>Frame.h<br>
    lldb/trunk/lldb.xcodeproj/<u></u>proj<u></u>ect.pbxproj<br>
    lldb/trunk/scripts/Python/<u></u>buil<u></u>d-swig-Python.sh<br>
    lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBFrame.i<br>
    lldb/trunk/scripts/lldb.swig<br>
    lldb/trunk/source/API/<u></u>CMakeLis<u></u>ts.txt<br>
    lldb/trunk/source/API/SBFrame.<u></u><u></u>cpp<br>
<br>
Modified: lldb/trunk/include/lldb/API/<u></u>LL<u></u>DB.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/API/LLDB.h?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/include/<u></u>lldb/<u></u>API/LLDB.h?rev=228975&r1=<u></u>22897<u></u>4&r2=228975&view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/include/lldb/API/<u></u>LL<u></u>DB.h (original)<br>
+++ lldb/trunk/include/lldb/API/<u></u>LL<u></u>DB.h Thu Feb 12 17:09:17 2015<br>
@@ -52,5 +52,6 @@<br>
 #include "lldb/API/SBType.h"<br>
 #include "lldb/API/SBValue.h"<br>
 #include "lldb/API/SBValueList.h"<br>
+#include "lldb/API/SBVariablesOptions.<u></u>h<u></u>"<br>
<br>
 #endif  // LLDB_LLDB_h_<br>
<br>
Modified: lldb/trunk/include/lldb/API/<u></u>SB<u></u>Defines.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/API/SBDefines.h?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/include/<u></u>lldb/<u></u>API/SBDefines.h?rev=<u></u>228975&r1=<u></u>228974&r2=228975&<u></u>view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/include/lldb/API/<u></u>SB<u></u>Defines.h (original)<br>
+++ lldb/trunk/include/lldb/API/<u></u>SB<u></u>Defines.h Thu Feb 12 17:09:17 2015<br>
@@ -90,6 +90,7 @@ class LLDB_API SBTypeSynthetic;<br>
 class LLDB_API SBTypeList;<br>
 class LLDB_API SBValue;<br>
 class LLDB_API SBValueList;<br>
+class LLDB_API SBVariablesOptions;<br>
 class LLDB_API SBWatchpoint;<br>
 class LLDB_API SBUnixSignals;<br>
<br>
<br>
Modified: lldb/trunk/include/lldb/API/<u></u>SB<u></u>Frame.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/API/SBFrame.h?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/include/<u></u>lldb/<u></u>API/SBFrame.h?rev=228975&<u></u>r1=<u></u>228974&r2=228975&view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/include/lldb/API/<u></u>SB<u></u>Frame.h (original)<br>
+++ lldb/trunk/include/lldb/API/<u></u>SB<u></u>Frame.h Thu Feb 12 17:09:17 2015<br>
@@ -157,12 +157,7 @@ public:<br>
                   lldb::DynamicValueType  use_dynamic);<br>
<br>
     lldb::SBValueList<br>
-    GetVariables (bool arguments,<br>
-                  bool locals,<br>
-                  bool statics,<br>
-                  bool in_scope_only,<br>
-                  bool include_runtime_support_<u></u>values<u></u>,<br>
-                  lldb::DynamicValueType  use_dynamic);<br>
+    GetVariables (const lldb::SBVariablesOptions& options);<br>
<br>
     lldb::SBValueList<br>
     GetRegisters ();<br>
<br>
Added: lldb/trunk/include/lldb/API/<u></u>SB<u></u>VariablesOptions.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/API/SBVariablesOptions.h?rev=228975&view=auto" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/include/<u></u>lldb/<u></u>API/SBVariablesOptions.h?<u></u>rev=<u></u>228975&view=auto</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/include/lldb/API/<u></u>SB<u></u>VariablesOptions.h (added)<br>
+++ lldb/trunk/include/lldb/API/<u></u>SB<u></u>VariablesOptions.h Thu Feb 12 17:09:17 2015<br>
@@ -0,0 +1,98 @@<br>
+//===-- SBVariablesOptions.h ------------------------------<u></u><u></u>------------*- C++ -*-===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is distributed under the University of Illinois Open Source<br>
+// License. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<u></u><u></u>------------------------------<u></u><u></u>----------------===//<br>
+<br>
+#ifndef LLDB_SBVariablesOptions_h_<br>
+#define LLDB_SBVariablesOptions_h_<br>
+<br>
+#include "lldb/API/SBDefines.h"<br>
+<br>
+class VariablesOptionsImpl;<br>
+<br>
+namespace lldb {<br>
+<br>
+class SBVariablesOptions<br>
+{<br>
+public:<br>
+    SBVariablesOptions ();<br>
+<br>
+    SBVariablesOptions (const SBVariablesOptions& options);<br>
+<br>
+    SBVariablesOptions&<br>
+    operator = (const SBVariablesOptions& options);<br>
+<br>
+    ~SBVariablesOptions ();<br>
+<br>
+    bool<br>
+    IsValid () const;<br>
+<br>
+    bool<br>
+    GetIncludeArguments () const;<br>
+<br>
+    void<br>
+    SetIncludeArguments (bool);<br>
+<br>
+    bool<br>
+    GetIncludeLocals () const;<br>
+<br>
+    void<br>
+    SetIncludeLocals (bool);<br>
+<br>
+    bool<br>
+    GetIncludeStatics () const;<br>
+<br>
+    void<br>
+    SetIncludeStatics (bool);<br>
+<br>
+    bool<br>
+    GetInScopeOnly () const;<br>
+<br>
+    void<br>
+    SetInScopeOnly (bool);<br>
+<br>
+    bool<br>
+    GetIncludeRuntimeSupportValues () const;<br>
+<br>
+    void<br>
+    SetIncludeRuntimeSupportValues (bool);<br>
+<br>
+    lldb::DynamicValueType<br>
+    GetUseDynamic () const;<br>
+<br>
+    void<br>
+    SetUseDynamic (lldb::DynamicValueType);<br>
+<br>
+protected:<br>
+    VariablesOptionsImpl *<br>
+    operator->();<br>
+<br>
+    const VariablesOptionsImpl *<br>
+    operator->() const;<br>
+<br>
+    VariablesOptionsImpl *<br>
+    get ();<br>
+<br>
+    VariablesOptionsImpl &<br>
+    ref();<br>
+<br>
+    const VariablesOptionsImpl &<br>
+    ref() const;<br>
+<br>
+    SBVariablesOptions (VariablesOptionsImpl *lldb_object_ptr);<br>
+<br>
+    void<br>
+    SetOptions (VariablesOptionsImpl *lldb_object_ptr);<br>
+<br>
+private:<br>
+<br>
+    std::unique_ptr<<u></u>VariablesOptio<u></u>nsImpl> m_opaque_ap;<br>
+};<br>
+<br>
+} // namespace lldb<br>
+<br>
+#endif  // LLDB_SBValue_h_<br>
<br>
Modified: lldb/trunk/lldb.xcodeproj/<u></u>proj<u></u>ect.pbxproj<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/lldb.xcodeproj/project.pbxproj?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/lldb.<u></u>xcodepro<u></u>j/project.pbxproj?rev=<u></u>228975&<u></u>r1=228974&r2=228975&<u></u>view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/lldb.xcodeproj/<u></u>proj<u></u>ect.pbxproj (original)<br>
+++ lldb/trunk/lldb.xcodeproj/<u></u>proj<u></u>ect.pbxproj Thu Feb 12 17:09:17 2015<br>
@@ -765,6 +765,8 @@<br>
                941BCC8014E48C4000BB969C /* SBTypeFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = 9461568714E355F2003A195C /* SBTypeFormat.h */; settings = {ATTRIBUTES = (Public, ); }; };<br>
                941BCC8114E48C4000BB969C /* SBTypeSummary.h in Headers */ = {isa = PBXBuildFile; fileRef = 9461568814E355F2003A195C /* SBTypeSummary.h */; settings = {ATTRIBUTES = (Public, ); }; };<br>
                941BCC8214E48C4000BB969C /* SBTypeSynthetic.h in Headers */ = {isa = PBXBuildFile; fileRef = 9461568914E355F2003A195C /* SBTypeSynthetic.h */; settings = {ATTRIBUTES = (Public, ); }; };<br>
+               94235B9E1A8D667400EB2EED /* SBVariablesOptions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 94235B9B1A8D5FF300EB2EED /* SBVariablesOptions.cpp */; };<br>
+               94235B9F1A8D66D600EB2EED /* SBVariablesOptions.h in Headers */ = {isa = PBXBuildFile; fileRef = 94235B9A1A8D5FD800EB2EED /* SBVariablesOptions.h */; settings = {ATTRIBUTES = (Public, ); }; };<br>
                942829561A89614C00521B30 /* JSON.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942829551A89614C00521B30 /* JSON.cpp */; };<br>
                942829CC1A89839300521B30 /* liblldb-core.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2689FFCA13353D7A00698AC0 /* liblldb-core.a */; };<br>
                942AFF0519F84ABF007B43B4 /* LibCxxVector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942AFF0419F84ABF007B43B4 /* LibCxxVector.cpp */; };<br>
@@ -2400,6 +2402,9 @@<br>
                940B04DE1A8986070045D5F7 /* libncurses.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libncurses.dylib; path = Platforms/MacOSX.platform/<u></u>Deve<u></u>loper/SDKs/MacOSX10.10.<u></u>sdk/<u></u>usr/lib/libncurses.dylib; sourceTree = DEVELOPER_DIR; };<br>
                940B04E01A89860E0045D5F7 /* libedit.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libedit.dylib; path = Platforms/MacOSX.platform/<u></u>Deve<u></u>loper/SDKs/MacOSX10.10.<u></u>sdk/<u></u>usr/lib/libedit.dylib; sourceTree = DEVELOPER_DIR; };<br>
                94145430175D7FDE00284436 /* lldb-versioning.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "lldb-versioning.h"; path = "include/lldb/lldb-versioning.<u></u><u></u>h"; sourceTree = "<group>"; };<br>
+               94235B9A1A8D5FD800EB2EED /* SBVariablesOptions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SBVariablesOptions.h; path = include/lldb/API/<u></u>SBVariablesOp<u></u>tions.h; sourceTree = "<group>"; };<br>
+               94235B9B1A8D5FF300EB2EED /* SBVariablesOptions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SBVariablesOptions.cpp; path = source/API/SBVariablesOptions.<u></u><u></u>cpp; sourceTree = "<group>"; };<br>
+               94235B9D1A8D601A00EB2EED /* SBVariablesOptions.i */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c.preprocessed; path = SBVariablesOptions.i; sourceTree = "<group>"; };<br>
                942829541A89614000521B30 /* JSON.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JSON.h; path = include/lldb/Utility/JSON.h; sourceTree = "<group>"; };<br>
                942829551A89614C00521B30 /* JSON.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = JSON.cpp; path = source/Utility/JSON.cpp; sourceTree = "<group>"; };<br>
                942829C01A89835300521B30 /* argdumper */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = argdumper; sourceTree = BUILT_PRODUCTS_DIR; };<br>
@@ -3176,6 +3181,7 @@<br>
                                9461569514E3567F003A195C /* SBTypeSynthetic.i */,<br>
                                2611FF12142D83060017FEA3 /* SBValue.i */,<br>
                                2611FF13142D83060017FEA3 /* SBValueList.i */,<br>
+                               94235B9D1A8D601A00EB2EED /* SBVariablesOptions.i */,<br>
                                B2A5872514313B480092BFBA /* SBWatchpoint.i */,<br>
                        );<br>
                        name = interface;<br>
@@ -3194,8 +3200,6 @@<br>
                262D3190111B4341004E6F88 /* API */ = {<br>
                        isa = PBXGroup;<br>
                        children = (<br>
-                               254FBB961A81B03100BD6378 /* SBLaunchInfo.h */,<br>
-                               254FBB941A81AA7F00BD6378 /* SBLaunchInfo.cpp */,<br>
                                2611FEEE142D83060017FEA3 /* interface */,<br>
                                26BC7C2510F1B3BC00F91463 /* lldb-defines.h */,<br>
                                26BC7C2610F1B3BC00F91463 /* lldb-enumerations.h */,<br>
@@ -3251,6 +3255,8 @@<br>
                                9AC703AE117675410086C050 /* SBInstruction.cpp */,<br>
                                9AC7038F117675270086C050 /* SBInstructionList.h */,<br>
                                9AC703B0117675490086C050 /* SBInstructionList.cpp */,<br>
+                               254FBB961A81B03100BD6378 /* SBLaunchInfo.h */,<br>
+                               254FBB941A81AA7F00BD6378 /* SBLaunchInfo.cpp */,<br>
                                26DE205811618FE700A093E2 /* SBLineEntry.h */,<br>
                                26DE20621161904200A093E2 /* SBLineEntry.cpp */,<br>
                                9A9831021125FC5800A56CB0 /* SBListener.h */,<br>
@@ -3311,6 +3317,8 @@<br>
                                9A19A6AD1163BB9800E0D453 /* SBValue.cpp */,<br>
                                9A357582116CFDEE00E8ED2F /* SBValueList.h */,<br>
                                9A35758D116CFE0F00E8ED2F /* SBValueList.cpp */,<br>
+                               94235B9A1A8D5FD800EB2EED /* SBVariablesOptions.h */,<br>
+                               94235B9B1A8D5FF300EB2EED /* SBVariablesOptions.cpp */,<br>
                                B2A58721143119810092BFBA /* SBWatchpoint.h */,<br>
                                B2A58723143119D50092BFBA /* SBWatchpoint.cpp */,<br>
                        );<br>
@@ -5214,6 +5222,7 @@<br>
                                26D265A2136B40EE002EEE45 /* SharingPtr.h in Headers */,<br>
                                26D265BC136B4269002EEE45 /* lldb-public.h in Headers */,<br>
                                4CE4F673162C971A00F75CB3 /* SBExpressionOptions.h in Headers */,<br>
+                               94235B9F1A8D66D600EB2EED /* SBVariablesOptions.h in Headers */,<br>
                                23EFE389193D1ABC00E54E54 /* SBTypeEnumMember.h in Headers */,<br>
                        );<br>
                        runOnlyForDeploymentPostproces<u></u><u></u>sing = 0;<br>
@@ -5813,6 +5822,7 @@<br>
                                9AC703AF117675410086C050 /* SBInstruction.cpp in Sources */,<br>
                                9AC703B1117675490086C050 /* SBInstructionList.cpp in Sources */,<br>
                                268F9D55123AA16600B91E9B /* SBSymbolContextList.cpp in Sources */,<br>
+                               94235B9E1A8D667400EB2EED /* SBVariablesOptions.cpp in Sources */,<br>
                                26C72C961243229A0068DC16 /* SBStream.cpp in Sources */,<br>
                                9443B122140C18C40013457C /* SBData.cpp in Sources */,<br>
                                4CF52AF8142829390051E832 /* SBFileSpecList.cpp in Sources */,<br>
<br>
Modified: lldb/trunk/scripts/Python/<u></u>buil<u></u>d-swig-Python.sh<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/build-swig-Python.sh?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/scripts/<u></u>Pytho<u></u>n/build-swig-Python.sh?<u></u>rev=<u></u>228975&r1=228974&r2=<u></u>228975&<u></u>view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/scripts/Python/<u></u>buil<u></u>d-swig-Python.sh (original)<br>
+++ lldb/trunk/scripts/Python/<u></u>buil<u></u>d-swig-Python.sh Thu Feb 12 17:09:17 2015<br>
@@ -126,6 +126,7 @@ HEADER_FILES="${SRC_ROOT}/<u></u>incl<u></u>ude/lldb/l<br>
 " ${SRC_ROOT}/include/lldb/API/<u></u>S<u></u>BTypeSynthetic.h"\<br>
 " ${SRC_ROOT}/include/lldb/API/<u></u>S<u></u>BValue.h"\<br>
 " ${SRC_ROOT}/include/lldb/API/<u></u>S<u></u>BValueList.h"\<br>
+" ${SRC_ROOT}/include/lldb/API/<u></u>S<u></u>BVariablesOptions.h"\<br>
 " ${SRC_ROOT}/include/lldb/API/<u></u>S<u></u>BWatchpoint.h"\<br>
 " ${SRC_ROOT}/include/lldb/API/<u></u>S<u></u>BUnixSignals.h"<br>
<br>
@@ -178,6 +179,7 @@ INTERFACE_FILES="${SRC_ROOT}/<u></u>s<u></u>cripts/Pyt<br>
 " ${SRC_ROOT}/scripts/Python/<u></u>int<u></u>erface/SBTypeSynthetic.i"\<br>
 " ${SRC_ROOT}/scripts/Python/<u></u>int<u></u>erface/SBValue.i"\<br>
 " ${SRC_ROOT}/scripts/Python/<u></u>int<u></u>erface/SBValueList.i"\<br>
+" ${SRC_ROOT}/scripts/Python/<u></u>int<u></u>erface/SBVariablesOptions.<u></u>i"\<br>
 " ${SRC_ROOT}/scripts/Python/<u></u>int<u></u>erface/SBWatchpoint.i"\<br>
 " ${SRC_ROOT}/scripts/Python/<u></u>int<u></u>erface/SBUnixSignals.i"<br>
<br>
<br>
Modified: lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBFrame.i<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/interface/SBFrame.i?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/scripts/<u></u>Pytho<u></u>n/interface/SBFrame.i?<u></u>rev=<u></u>228975&r1=228974&r2=<u></u>228975&<u></u>view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBFrame.i (original)<br>
+++ lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBFrame.i Thu Feb 12 17:09:17 2015<br>
@@ -199,12 +199,7 @@ public:<br>
                   lldb::DynamicValueType  use_dynamic);<br>
<br>
     lldb::SBValueList<br>
-    GetVariables (bool arguments,<br>
-                  bool locals,<br>
-                  bool statics,<br>
-                  bool in_scope_only,<br>
-                  bool include_runtime_support_<u></u>values<u></u>,<br>
-                  lldb::DynamicValueType  use_dynamic);<br>
+    GetVariables (const lldb::SBVariablesOptions& options);<br>
<br>
     lldb::SBValueList<br>
     GetRegisters ();<br>
<br>
Added: lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBVariablesOptions.i<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/interface/SBVariablesOptions.i?rev=228975&view=auto" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/scripts/<u></u>Pytho<u></u>n/interface/<u></u>SBVariablesOptions<u></u>.i?rev=<u></u>228975&view=auto</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBVariablesOptions.i (added)<br>
+++ lldb/trunk/scripts/Python/<u></u>inte<u></u>rface/SBVariablesOptions.i Thu Feb 12 17:09:17 2015<br>
@@ -0,0 +1,61 @@<br>
+//===-- SWIG Interface for SBVariablesOptions ----------------------*- C++ -*-===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is distributed under the University of Illinois Open Source<br>
+// License. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<u></u><u></u>------------------------------<u></u><u></u>----------------===//<br>
+<br>
+namespace lldb {<br>
+<br>
+class SBVariablesOptions<br>
+{<br>
+public:<br>
+    SBVariablesOptions ();<br>
+<br>
+    SBVariablesOptions (const SBVariablesOptions& options);<br>
+<br>
+    ~SBVariablesOptions ();<br>
+<br>
+    bool<br>
+    IsValid () const;<br>
+<br>
+    bool<br>
+    GetIncludeArguments ()  const;<br>
+<br>
+    void<br>
+    SetIncludeArguments (bool);<br>
+<br>
+    bool<br>
+    GetIncludeLocals ()  const;<br>
+<br>
+    void<br>
+    SetIncludeLocals (bool);<br>
+<br>
+    bool<br>
+    GetIncludeStatics ()  const;<br>
+<br>
+    void<br>
+    SetIncludeStatics (bool);<br>
+<br>
+    bool<br>
+    GetInScopeOnly ()  const;<br>
+<br>
+    void<br>
+    SetInScopeOnly (bool);<br>
+<br>
+    bool<br>
+    GetIncludeRuntimeSupportValues () const;<br>
+<br>
+    void<br>
+    SetIncludeRuntimeSupportValues (bool);<br>
+<br>
+    lldb::DynamicValueType<br>
+    GetUseDynamic () const;<br>
+<br>
+    void<br>
+    SetUseDynamic (lldb::DynamicValueType);<br>
+};<br>
+<br>
+} // namespace lldb<br>
<br>
Modified: lldb/trunk/scripts/lldb.swig<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/lldb.swig?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/scripts/<u></u>lldb.<u></u>swig?rev=228975&r1=<u></u>228974&r2=<u></u>228975&view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/scripts/lldb.swig (original)<br>
+++ lldb/trunk/scripts/lldb.swig Thu Feb 12 17:09:17 2015<br>
@@ -105,6 +105,7 @@ import os<br>
 #include "lldb/API/SBTypeSynthetic.h"<br>
 #include "lldb/API/SBValue.h"<br>
 #include "lldb/API/SBValueList.h"<br>
+#include "lldb/API/SBVariablesOptions.<u></u>h<u></u>"<br>
 #include "lldb/API/SBWatchpoint.h"<br>
 #include "lldb/API/SBUnixSignals.h"<br>
<br>
@@ -180,6 +181,7 @@ import os<br>
 %include "./Python/interface/<u></u>SBTypeSynt<u></u>hetic.i"<br>
 %include "./Python/interface/SBValue.i"<br>
 %include "./Python/interface/<u></u>SBValueLis<u></u>t.i"<br>
+%include "./Python/interface/<u></u>SBVariable<u></u>sOptions.i"<br>
 %include "./Python/interface/<u></u>SBWatchpoi<u></u>nt.i"<br>
 %include "./Python/interface/<u></u>SBUnixSign<u></u>als.i"<br>
<br>
<br>
Modified: lldb/trunk/source/API/<u></u>CMakeLis<u></u>ts.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/source/API/CMakeLists.txt?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/source/API/<u></u>CM<u></u>akeLists.txt?rev=228975&r1=<u></u>228<u></u>974&r2=228975&view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/source/API/<u></u>CMakeLis<u></u>ts.txt (original)<br>
+++ lldb/trunk/source/API/<u></u>CMakeLis<u></u>ts.txt Thu Feb 12 17:09:17 2015<br>
@@ -57,6 +57,7 @@ add_lldb_library(lldbAPI<br>
   SBTypeSynthetic.cpp<br>
   SBValue.cpp<br>
   SBValueList.cpp<br>
+  SBVariablesOptions.cpp<br>
   SBWatchpoint.cpp<br>
   SBUnixSignals.cpp<br>
   )<br>
<br>
Modified: lldb/trunk/source/API/SBFrame.<u></u><u></u>cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/source/API/SBFrame.cpp?rev=228975&r1=228974&r2=228975&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/source/API/<u></u>SB<u></u>Frame.cpp?rev=228975&r1=<u></u>228974<u></u>&r2=228975&view=diff</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/source/API/SBFrame.<u></u><u></u>cpp (original)<br>
+++ lldb/trunk/source/API/SBFrame.<u></u><u></u>cpp Thu Feb 12 17:09:17 2015<br>
@@ -44,6 +44,7 @@<br>
 #include "lldb/API/SBStream.h"<br>
 #include "lldb/API/SBSymbolContext.h"<br>
 #include "lldb/API/SBThread.h"<br>
+#include "lldb/API/SBVariablesOptions.<u></u>h<u></u>"<br>
<br>
 using namespace lldb;<br>
 using namespace lldb_private;<br>
@@ -1075,7 +1076,17 @@ SBFrame::GetVariables (bool arguments,<br>
     if (frame && target)<br>
     {<br>
         lldb::DynamicValueType use_dynamic = frame->CalculateTarget()-><u></u>GetP<u></u>referDynamicValue();<br>
-        value_list = GetVariables (arguments, locals, statics, in_scope_only, use_dynamic);<br>
+        const bool include_runtime_support_values = target ? target-><u></u>GetDisplayRuntimeSuppo<u></u>rtValues<u></u>() : false;<br>
+<br>
+        SBVariablesOptions options;<br>
+        options.SetIncludeArguments(<u></u>ar<u></u>guments);<br>
+        options.SetIncludeLocals(<u></u>local<u></u>s);<br>
+        options.SetIncludeStatics(<u></u>stat<u></u>ics);<br>
+        options.SetInScopeOnly(in_<u></u>scop<u></u>e_only);<br>
+        options.<u></u>SetIncludeRuntimeSuppo<u></u>rtValues<u></u>(include_runtime_<u></u>support_<u></u>values);<br>
+        options.SetUseDynamic(use_<u></u>dyna<u></u>mic);<br>
+<br>
+        value_list = GetVariables (options);<br>
     }<br>
     return value_list;<br>
 }<br>
@@ -1089,22 +1100,19 @@ SBFrame::GetVariables (bool arguments,<br>
 {<br>
     ExecutionContext exe_ctx(m_opaque_sp.get());<br>
     Target *target = exe_ctx.GetTargetPtr();<br>
-    bool include_runtime_support_values = target ? target-><u></u>GetDisplayRuntimeSuppo<u></u>rtValues<u></u>() : false;<br>
-    return GetVariables(arguments,<br>
-                        locals,<br>
-                        statics,<br>
-                        in_scope_only,<br>
-                        include_runtime_support_<u></u>values<u></u>,<br>
-                        use_dynamic);<br>
+    const bool include_runtime_support_values = target ? target-><u></u>GetDisplayRuntimeSuppo<u></u>rtValues<u></u>() : false;<br>
+    SBVariablesOptions options;<br>
+    options.SetIncludeArguments(<u></u>ar<u></u>guments);<br>
+    options.SetIncludeLocals(<u></u>local<u></u>s);<br>
+    options.SetIncludeStatics(<u></u>stat<u></u>ics);<br>
+    options.SetInScopeOnly(in_<u></u>scop<u></u>e_only);<br>
+    options.<u></u>SetIncludeRuntimeSuppo<u></u>rtValues<u></u>(include_runtime_<u></u>support_<u></u>values);<br>
+    options.SetUseDynamic(use_<u></u>dyna<u></u>mic);<br>
+    return GetVariables(options);<br>
 }<br>
<br>
 SBValueList<br>
-SBFrame::GetVariables (bool arguments,<br>
-                       bool locals,<br>
-                       bool statics,<br>
-                       bool in_scope_only,<br>
-                       bool include_runtime_support_<u></u>values<u></u>,<br>
-                       lldb::DynamicValueType  use_dynamic)<br>
+SBFrame::GetVariables (const lldb::SBVariablesOptions& options)<br>
 {<br>
     Log *log(GetLogIfAllCategoriesSet (LIBLLDB_LOG_API));<br>
<br>
@@ -1115,10 +1123,19 @@ SBFrame::GetVariables (bool arguments,<br>
     StackFrame *frame = NULL;<br>
     Target *target = exe_ctx.GetTargetPtr();<br>
<br>
+    const bool statics = options.GetIncludeStatics();<br>
+    const bool arguments = options.GetIncludeArguments();<br>
+    const bool locals = options.GetIncludeLocals();<br>
+    const bool in_scope_only = options.GetInScopeOnly();<br>
+    const bool include_runtime_support_values = options.<u></u>GetIncludeRuntimeSuppo<u></u>rtValues<u></u>();<br>
+    const lldb::DynamicValueType use_dynamic = options.GetUseDynamic();<br>
+<br>
     if (log)<br>
-        log->Printf ("SBFrame::GetVariables (arguments=%i, locals=%i, statics=%i, in_scope_only=%i)",<br>
-                     arguments, locals, statics, in_scope_only);<br>
-<br>
+        log->Printf ("SBFrame::GetVariables (arguments=%i, locals=%i, statics=%i, in_scope_only=%i runtime=%i dynamic=%i)",<br>
+                     arguments, locals,<br>
+                     statics, in_scope_only,<br>
+                     include_runtime_support_<u></u>value<u></u>s, use_dynamic);<br>
+<br>
     Process *process = exe_ctx.GetProcessPtr();<br>
     if (target && process)<br>
     {<br>
<br>
Added: lldb/trunk/source/API/<u></u>SBVariab<u></u>lesOptions.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/source/API/SBVariablesOptions.cpp?rev=228975&view=auto" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/source/API/<u></u>SB<u></u>VariablesOptions.cpp?rev=<u></u>22897<u></u>5&view=auto</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/source/API/<u></u>SBVariab<u></u>lesOptions.cpp (added)<br>
+++ lldb/trunk/source/API/<u></u>SBVariab<u></u>lesOptions.cpp Thu Feb 12 17:09:17 2015<br>
@@ -0,0 +1,254 @@<br>
+//===-- SBVariablesOptions.cpp ------------------------------<u></u><u></u>--------*- C++ -*-===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is distributed under the University of Illinois Open Source<br>
+// License. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<u></u><u></u>------------------------------<u></u><u></u>----------------===//<br>
+<br>
+<br>
+#include "lldb/API/SBVariablesOptions.<u></u>h<u></u>"<br>
+<br>
+using namespace lldb;<br>
+using namespace lldb_private;<br>
+<br>
+class VariablesOptionsImpl<br>
+{<br>
+public:<br>
+    VariablesOptionsImpl () :<br>
+    m_include_arguments(false),<br>
+    m_include_locals(false),<br>
+    m_include_statics(false),<br>
+    m_in_scope_only(false),<br>
+    m_include_runtime_support_<u></u>valu<u></u>es(false),<br>
+    m_use_dynamic(lldb::<u></u>eNoDynamic<u></u>Values)<br>
+    {}<br>
+<br>
+    VariablesOptionsImpl (const VariablesOptionsImpl&) = default;<br>
+<br>
+    ~VariablesOptionsImpl () = default;<br>
+<br>
+    VariablesOptionsImpl&<br>
+    operator = (const VariablesOptionsImpl&) = default;<br>
+<br>
+    bool<br>
+    GetIncludeArguments () const<br>
+    {<br>
+        return m_include_arguments;<br>
+    }<br>
+<br>
+    void<br>
+    SetIncludeArguments (bool b)<br>
+    {<br>
+        m_include_arguments = b;<br>
+    }<br>
+<br>
+    bool<br>
+    GetIncludeLocals () const<br>
+    {<br>
+        return m_include_locals;<br>
+    }<br>
+<br>
+    void<br>
+    SetIncludeLocals (bool b)<br>
+    {<br>
+        m_include_locals = b;<br>
+    }<br>
+<br>
+    bool<br>
+    GetIncludeStatics () const<br>
+    {<br>
+        return m_include_statics;<br>
+    }<br>
+<br>
+    void<br>
+    SetIncludeStatics (bool b)<br>
+    {<br>
+        m_include_statics = b;<br>
+    }<br>
+<br>
+    bool<br>
+    GetInScopeOnly () const<br>
+    {<br>
+        return m_in_scope_only;<br>
+    }<br>
+<br>
+    void<br>
+    SetInScopeOnly (bool b)<br>
+    {<br>
+        m_in_scope_only = b;<br>
+    }<br>
+<br>
+    bool<br>
+    GetIncludeRuntimeSupportValues () const<br>
+    {<br>
+        return m_include_runtime_support_<u></u>valu<u></u>es;<br>
+    }<br>
+<br>
+    void<br>
+    SetIncludeRuntimeSupportValues (bool b)<br>
+    {<br>
+        m_include_runtime_support_<u></u>valu<u></u>es = b;<br>
+    }<br>
+<br>
+    lldb::DynamicValueType<br>
+    GetUseDynamic () const<br>
+    {<br>
+        return m_use_dynamic;<br>
+    }<br>
+<br>
+    void<br>
+    SetUseDynamic (lldb::DynamicValueType d)<br>
+    {<br>
+        m_use_dynamic = d;<br>
+    }<br>
+<br>
+<br>
+private:<br>
+    bool m_include_arguments : 1;<br>
+    bool m_include_locals : 1;<br>
+    bool m_include_statics : 1;<br>
+    bool m_in_scope_only : 1;<br>
+    bool m_include_runtime_support_<u></u>valu<u></u>es : 1;<br>
+    lldb::DynamicValueType m_use_dynamic;<br>
+};<br>
+<br>
+SBVariablesOptions::<u></u>SBVariabl<u></u>esOptions () :<br>
+m_opaque_ap(new VariablesOptionsImpl())<br>
+{<br>
+}<br>
+<br>
+SBVariablesOptions::<u></u>SBVariabl<u></u>esOptions (const SBVariablesOptions& options) :<br>
+m_opaque_ap(new VariablesOptionsImpl(options.<u></u>r<u></u>ef()))<br>
+{<br>
+}<br>
+<br>
+SBVariablesOptions&<br>
+SBVariablesOptions::operator = (const SBVariablesOptions& options)<br>
+{<br>
+    m_opaque_ap.reset(new VariablesOptionsImpl(options.<u></u>r<u></u>ef()));<br>
+    return *this;<br>
+}<br>
+<br>
+SBVariablesOptions::~<u></u>SBVariab<u></u>lesOptions () = default;<br>
+<br>
+bool<br>
+SBVariablesOptions::IsValid () const<br>
+{<br>
+    return m_opaque_ap.get() != nullptr;<br>
+}<br>
+<br>
+bool<br>
+SBVariablesOptions::<u></u>GetInclud<u></u>eArguments () const<br>
+{<br>
+    return m_opaque_ap-><u></u>GetIncludeArgumen<u></u>ts();<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetInclud<u></u>eArguments (bool arguments)<br>
+{<br>
+    m_opaque_ap-><u></u>SetIncludeArgumen<u></u>ts(arguments)<u></u>;<br>
+}<br>
+<br>
+bool<br>
+SBVariablesOptions::<u></u>GetInclud<u></u>eLocals () const<br>
+{<br>
+    return m_opaque_ap->GetIncludeLocals(<u></u><u></u>);<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetInclud<u></u>eLocals (bool locals)<br>
+{<br>
+    m_opaque_ap->SetIncludeLocals(<u></u><u></u>locals);<br>
+}<br>
+<br>
+bool<br>
+SBVariablesOptions::<u></u>GetInclud<u></u>eStatics () const<br>
+{<br>
+    return m_opaque_ap-><u></u>GetIncludeStatics<u></u>();<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetInclud<u></u>eStatics (bool statics)<br>
+{<br>
+    m_opaque_ap-><u></u>SetIncludeStatics<u></u>(statics);<br>
+}<br>
+<br>
+bool<br>
+SBVariablesOptions::<u></u>GetInScop<u></u>eOnly () const<br>
+{<br>
+    return m_opaque_ap->GetInScopeOnly();<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetInScop<u></u>eOnly (bool in_scope_only)<br>
+{<br>
+    m_opaque_ap->SetInScopeOnly(<u></u>in<u></u>_scope_only);<br>
+}<br>
+<br>
+bool<br>
+SBVariablesOptions::<u></u>GetInclud<u></u>eRuntimeSupportValues () const<br>
+{<br>
+    return m_opaque_ap-><u></u>GetIncludeRuntime<u></u>SupportValues<u></u>();<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetInclud<u></u>eRuntimeSupportValues (bool runtime_support_values)<br>
+{<br>
+    m_opaque_ap-><u></u>SetIncludeRuntime<u></u>SupportValues<u></u>(runtime_support_<u></u>values);<br>
+}<br>
+<br>
+lldb::DynamicValueType<br>
+SBVariablesOptions::<u></u>GetUseDyn<u></u>amic () const<br>
+{<br>
+    return m_opaque_ap->GetUseDynamic();<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetUseDyn<u></u>amic (lldb::DynamicValueType dynamic)<br>
+{<br>
+    m_opaque_ap->SetUseDynamic(<u></u>dyn<u></u>amic);<br>
+}<br>
+<br>
+VariablesOptionsImpl *<br>
+SBVariablesOptions::operator-<u></u><u></u>>()<br>
+{<br>
+    return m_opaque_ap.operator->();<br>
+}<br>
+<br>
+const VariablesOptionsImpl *<br>
+SBVariablesOptions::operator-<u></u><u></u>>() const<br>
+{<br>
+    return m_opaque_ap.operator->();<br>
+}<br>
+<br>
+VariablesOptionsImpl *<br>
+SBVariablesOptions::get ()<br>
+{<br>
+    return m_opaque_ap.get();<br>
+}<br>
+<br>
+VariablesOptionsImpl &<br>
+SBVariablesOptions::ref()<br>
+{<br>
+    return *m_opaque_ap;<br>
+}<br>
+<br>
+const VariablesOptionsImpl &<br>
+SBVariablesOptions::ref() const<br>
+{<br>
+    return *m_opaque_ap;<br>
+}<br>
+<br>
+SBVariablesOptions::<u></u>SBVariabl<u></u>esOptions (VariablesOptionsImpl *lldb_object_ptr) :<br>
+m_opaque_ap(std::move(lldb_<u></u>ob<u></u>ject_ptr))<br>
+{<br>
+}<br>
+<br>
+void<br>
+SBVariablesOptions::<u></u>SetOption<u></u>s (VariablesOptionsImpl *lldb_object_ptr)<br>
+{<br>
+    m_opaque_ap.reset(std::move(<u></u>ll<u></u>db_object_ptr));<br>
+}<br>
+<br>
<br>
Removed: lldb/trunk/test/<u></u>functionalitie<u></u>s/data-<u></u>formatter/typedef_<u></u>array/<u></u>Makefile<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/data-formatter/typedef_array/Makefile?rev=228974&view=auto" target="_blank">http://llvm.org/viewvc/llvm-<u></u>pr<u></u>oject/lldb/trunk/test/<u></u>function<u></u>alities/data-<u></u>formatter/<u></u>typedef_array/<u></u>Makefile?rev=<u></u>228974&view=auto</a><br>
==============================<u></u><u></u>==============================<u></u><u></u>==================<br>
--- lldb/trunk/test/<u></u>functionalitie<u></u>s/data-<u></u>formatter/typedef_<u></u>array/<u></u>Makefile (original)<br>
+++ lldb/trunk/test/<u></u>functionalitie<u></u>s/data-<u></u>formatter/typedef_<u></u>array/<u></u>Makefile (removed)<br>
@@ -1,4 +0,0 @@<br>
-LEVEL = ../../../make<br>
-CXX_SOURCES := main.cpp<br>
-CXXFLAGS += -std=c++11<br>
-include $(LEVEL)/Makefile.rules<br>
<br>
<br>
______________________________<u></u><u></u>_________________<br>
lldb-commits mailing list<br>
<a href="mailto:lldb-commits@cs.uiuc.edu" target="_blank">lldb-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailm<u></u>an/listinfo/lldb-commits</a><br>
</blockquote></div></blockquote></div>