<div dir="ltr">Also - after that comes out - if anyone is on gcc 4.8.x, where x is not 2, I'd be interested in hearing if they get the issue with the default compiler-generated operator= on tip of this branch.  I hit a period of time between gcc 4.6.2 and 4.6.3 where gcc either failed to generate operator= and the copy constructor (and optionally crashed) but that settled out by gcc 4.6.3 release.  If this is an issue with gcc 4.8.2 but not 4.8.1, I'd like to report it.  (Hafiz - I don't recall if you were using 4.8.1, but if so, it'd be great if you had a few minutes to run a build with it on tip of iohandler without Steve's soon-to-be-updated patch).  </div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jan 9, 2014 at 3:15 PM, Todd Fiala <span dir="ltr"><<a href="mailto:tfiala@google.com" target="_blank">tfiala@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Steve's going to fix a couple typos in that patch.  We're missing a few rhs. on the right hand side of the assignment operations.</div><div class="gmail_extra"><div><div class="h5"><br><br><div class="gmail_quote">
On Thu, Jan 9, 2014 at 1:52 PM, Steve Pucci <span dir="ltr"><<a href="mailto:spucci@google.com" target="_blank">spucci@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi all,<div><br></div><div>I have a new compilation problem (patch attached) with Ubuntu 12.04 using gcc 4.8.2.  It looks like gcc is not properly autogenerating a constructor, so the workaround is to provide one manually.</div>


<div><br></div><div> - Steve</div><div><br></div><div><div>Index: source/Core/IOHandler.cpp</div><div>===================================================================</div><div>--- source/Core/IOHandler.cpp<span style="white-space:pre-wrap">       </span>(revision 198879)</div>


<div>+++ source/Core/IOHandler.cpp<span style="white-space:pre-wrap">     </span>(working copy)</div><div>@@ -2252,6 +2252,23 @@</div><div>     {</div><div>     }</div><div>     </div><div>+    TreeItem &</div><div>+    operator=(const TreeItem &rhs)</div>


<div>+    {</div><div>+        if (this != &rhs)</div><div>+        {</div><div>+            m_parent = rhs.m_parent;</div><div>+            m_delegate = rhs.m_delegate;</div><div>+            m_user_data = rhs.m_user_data;</div>


<div>+            m_row_idx = rhs.m_row_idx;</div><div>+            m_children = rhs.m_children;</div><div>+            m_might_have_children = m_might_have_children;</div><div>+            m_is_expanded = m_is_expanded;</div>


<div>+            m_did_calculate_children = m_did_calculate_children;</div><div>+        }</div><div>+        return *this;</div><div>+    }</div><div>+</div><div>     size_t</div><div>     GetDepth () const</div><div>     {</div>


</div><div><div><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jan 9, 2014 at 1:10 PM, Steve Pucci <span dir="ltr"><<a href="mailto:spucci@google.com" target="_blank">spucci@google.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Hi all,<div><br></div><div>Running the iohandler branch on Ubuntu 12.04 using gcc 4.8.2, using configure rather than CMake, ran into a similar issue as Abid (needed to add -lcurses, and also add back in -ledit; patch attached).  I'm getting these test failures:</div>




<div><br></div><div><div>Ran 272 tests.</div><div>Failing Tests (4)</div><div>FAIL: LLDB (suite) :: TestCommandRegex.py (Linux <a href="http://spucci-linux.mtv.corp.google.com" target="_blank">spucci-linux.mtv.corp.google.com</a> 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18 PDT 2013 x86_64 x86_64)</div>



<div>FAIL: LLDB (suite) :: TestDataFormatterCategories.py (Linux <a href="http://spucci-linux.mtv.corp.google.com" target="_blank">spucci-linux.mtv.corp.google.com</a> 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18 PDT 2013 x86_64 x86_64)</div>



<div>FAIL: LLDB (suite) :: TestDataFormatterGlobals.py (Linux <a href="http://spucci-linux.mtv.corp.google.com" target="_blank">spucci-linux.mtv.corp.google.com</a> 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18 PDT 2013 x86_64 x86_64)</div>


<div>
FAIL: LLDB (suite) :: TestConvenienceVariables.py (Linux <a href="http://spucci-linux.mtv.corp.google.com" target="_blank">spucci-linux.mtv.corp.google.com</a> 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18 PDT 2013 x86_64 x86_64)</div>


</div><div>
<br></div><div>We will be looking at these shortly, but we're also tracking a compilation error that's blocking this now on this branch (more about that shortly).</div><div><br></div><div> - Steve</div><div><br></div>



<div>Patch:</div><div><br></div><div><div>Index: lib/Makefile</div><div>===================================================================</div><div>--- lib/Makefile<span style="white-space:pre-wrap">     </span>(revision 198878)</div>



<div>+++ lib/Makefile<span style="white-space:pre-wrap">  </span>(working copy)</div><div>@@ -148,7 +148,7 @@</div><div>     # Don't allow unresolved symbols.</div><div>     LLVMLibsOptions += -Wl,--no-undefined</div>



<div>     # Link in python</div><div>-    LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt</div><div>+    LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt -ledit -lncurses</div><div>     LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT)</div>



<div> endif</div><div> </div></div><div><br></div></div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jan 8, 2014 at 9:09 AM, Abid, Hafiz <span dir="ltr"><<a href="mailto:Hafiz_Abid@mentor.com" target="_blank">Hafiz_Abid@mentor.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>> Great, please check in any changes you need in order to build!<br>



</div>Committed in revision 198773.<br>
<div><div><br>
><br>
> On Jan 7, 2014, at 8:21 AM, Abid, Hafiz <<a href="mailto:Hafiz_Abid@mentor.com" target="_blank">Hafiz_Abid@mentor.com</a>> wrote:<br>
><br>
> > Hi Greg,<br>
> ><br>
> >> -----Original Message-----<br>
> >> From: <a href="mailto:lldb-dev-bounces@cs.uiuc.edu" target="_blank">lldb-dev-bounces@cs.uiuc.edu</a><br>
> >> [mailto:<a href="mailto:lldb-dev-bounces@cs.uiuc.edu" target="_blank">lldb-dev-bounces@cs.uiuc.edu</a>]<br>
> >> On Behalf Of Greg Clayton<br>
> >> Sent: 02 January 2014 22:57<br>
> >> To: <a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">lldb-dev@cs.uiuc.edu</a><br>
> >> Subject: [lldb-dev] Everyone: please download, build and test the new<br>
> >> iohandler branch<br>
> >><br>
> >> svn co<br>
> >> https://$<a href="http://USER@llvm.org/svn/llvm-project/lldb/branches/iohandler" target="_blank">USER@llvm.org/svn/llvm-project/lldb/branches/iohandler</a><br>
> >><br>
> >> The first step is to get it building for your platform as I am sure<br>
> >> the Makefiles are out of date.<br>
> >><br>
> >> This branch will soon be merged back into top of tree, but I wanted<br>
> >> to give all the major platforms time to submit patches against this<br>
> >> to get things working on all systems before any buildbots get broken.<br>
> >><br>
> >> The major benefits include:<br>
> >> - editline is not built into the lldb shared library so all IOHandler<br>
> >> objects can use the editline functionality.<br>
> >> - autocomplete now working in the embedded python interpreter<br>
> >> - history now working in the embedded python interpreter<br>
> >> - autocomplete now working for multi-line command entering (like in<br>
> >> "breakpoint command add")<br>
> >> - when editing multiple lines you can use the UP and DOWN arrow keys<br>
> >> to edit previous lines. This makes multi-line expressions and<br>
> >> commands much easier to write and edit. Use ^B and ^N for next/prev<br>
> >> history when in multi- line mode.<br>
> >> - curses is now supported with the new IOHandler infrastructure. To<br>
> >> try this out, run and hit a breakpoint, and type "gui" on the command<br>
> >> line to drop into the curses GUI mode! Lots of stuff isn't hooked up<br>
> >> yet, but I am sure the open source community can help fill in some<br>
> >> new views and improve existing ones.<br>
> >><br>
> >> So please get this building and test this on your system and let us<br>
> >> know what issues you run into.<br>
> ><br>
> > I tried to build this branch using cmake on Ubuntu 12.04 with gcc 4.8.<br>
> > There were some build issues that I fixed as follows.<br>
> ><br>
> > Include limits.h in Editline.cpp for PATH_MAX and libncurses in the cmake<br>
> files.<br>
> > I also noted that libedit version on my system was missing some<br>
> > defines like EL_PROMPT_ESC. I have to get hold of a recent version for<br>
> libedit.<br>
> > After that lldb builds fine on my system. Still have to test it though.<br>
> ><br>
> > I am pasting the changes needed for the build below.<br>
> ><br>
> ><br>
> > Index: source/Host/common/Editline.cpp<br>
> ><br>
> ================================================================<br>
> ===<br>
> > --- source/Host/common/Editline.cpp (revision 198682)<br>
> > +++ source/Host/common/Editline.cpp (working copy)<br>
> > @@ -15,6 +14,8 @@<br>
> > #include "lldb/Core/StringList.h"<br>
> > #include "lldb/Host/Host.h"<br>
> ><br>
> > +#include <limits.h><br>
> > +<br>
> > using namespace lldb;<br>
> > using namespace lldb_private;<br>
> ><br>
> > Index: source/Symbol/ClangASTType.cpp<br>
> ><br>
> ================================================================<br>
> ===<br>
> > --- source/Symbol/ClangASTType.cpp  (revision 198682)<br>
> > +++ source/Symbol/ClangASTType.cpp  (working copy)<br>
> > @@ -1135,7 +1135,7 @@<br>
> >         if (typedef_type)<br>
> >         {<br>
> >             const TypedefNameDecl *typedef_decl = typedef_type->getDecl();<br>
> > -            type_name = typedef_decl-<br>
> >getQualifiedNameAsString(printing_policy);<br>
> > +            type_name = typedef_decl->getQualifiedNameAsString();<br>
> >         }<br>
> >         else<br>
> >         {<br>
> > Index: CMakeLists.txt<br>
> ><br>
> ================================================================<br>
> ===<br>
> > --- CMakeLists.txt  (revision 198682)<br>
> > +++ CMakeLists.txt  (working copy)<br>
> > @@ -265,6 +265,10 @@<br>
> >   list(APPEND system_libs execinfo)<br>
> > endif()<br>
> ><br>
> > +if (CMAKE_SYSTEM_NAME MATCHES "Linux")<br>
> > +  list(APPEND system_libs ncurses)<br>
> > +endif()<br>
> > +<br>
> > #add_subdirectory(include)<br>
> > add_subdirectory(docs)<br>
> > if (NOT CMAKE_SYSTEM_NAME MATCHES "Windows")<br>
> ><br>
> > Regards,<br>
> > Abid<br>
> ><br>
> >><br>
> >> Greg Clayton<br>
> >><br>
> >> _______________________________________________<br>
> >> lldb-dev mailing list<br>
> >> <a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">lldb-dev@cs.uiuc.edu</a><br>
> >> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev</a><br>
<br>
<br>
_______________________________________________<br>
lldb-dev mailing list<br>
<a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">lldb-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev</a><br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div></div></div></div>
<br>_______________________________________________<br>
lldb-dev mailing list<br>
<a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">lldb-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div></div></div><div class="im">-- <br><div dir="ltr"><table cellspacing="0" cellpadding="0" style="color:rgb(136,136,136);font-family:'Times New Roman'"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small">

<td nowrap style="border-top-style:solid;border-top-color:rgb(213,15,37);border-top-width:2px">Todd Fiala |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(51,105,232);border-top-width:2px"> Software Engineer |</td>

<td nowrap style="border-top-style:solid;border-top-color:rgb(0,153,57);border-top-width:2px"> <a href="mailto:tfiala@google.com" style="color:rgb(17,85,204)" target="_blank"><span style="background-color:rgb(255,255,204);color:rgb(34,34,34);background-repeat:initial initial">tfiala@google.com</span></a> |</td>

<td nowrap style="border-top-style:solid;border-top-color:rgb(238,178,17);border-top-width:2px"><font color="#1155cc"> <a>650-943-3180</a></font></td></tr></tbody></table><br></div>
</div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr"><table cellspacing="0" cellpadding="0" style="color:rgb(136,136,136);font-family:'Times New Roman'"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small">
<td nowrap style="border-top-style:solid;border-top-color:rgb(213,15,37);border-top-width:2px">Todd Fiala |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(51,105,232);border-top-width:2px"> Software Engineer |</td>
<td nowrap style="border-top-style:solid;border-top-color:rgb(0,153,57);border-top-width:2px"> <a href="mailto:tfiala@google.com" style="color:rgb(17,85,204)" target="_blank"><span style="background-color:rgb(255,255,204);color:rgb(34,34,34);background-repeat:initial initial">tfiala@google.com</span></a> |</td>
<td nowrap style="border-top-style:solid;border-top-color:rgb(238,178,17);border-top-width:2px"><font color="#1155cc"> <a>650-943-3180</a></font></td></tr></tbody></table><br></div>
</div>