[Lldb-commits] [lldb] r216304 - Fix a couple of potential issues in the lexer where we were ignoring the putback data
Enrico Granata
egranata at apple.com
Sat Aug 23 11:25:27 PDT 2014
I have already LGTMed a patch by Paul on the -dev list to this effect, which is why I held back on committing the fix myself.
If necessary, I can just do it though.
Sent from my iPhone
> On Aug 23, 2014, at 10:36 AM, Randy Smith <rdsmith at chromium.org> wrote:
>
> Enrico: This is failing in my compile (Linux, using gcc 4.8) with:
>
> /usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Utility/StringLexer.cpp:
> In member function ‘bool
> lldb_utility::StringLexer::HasAny(lldb_utility::StringLexer::Character)’:
> /usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Utility/StringLexer.cpp:75:9:
> error: ‘find’ is not a member of ‘std’
> if (std::find(begin, end, c) != end)
> ^
>
> I presume it's just a missing include file; certainly "#include
> <algorithm>" at the top of StringLexer.cpp fixes it. (To answer the
> obvious question: I'm not an lldb committer, so I can't just fix
> this.)
>
> -- Randy
>
>
>> On Fri, Aug 22, 2014 at 8:11 PM, Enrico Granata <egranata at apple.com> wrote:
>> Author: enrico
>> Date: Fri Aug 22 19:11:38 2014
>> New Revision: 216304
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=216304&view=rev
>> Log:
>> Fix a couple of potential issues in the lexer where we were ignoring the putback data
>>
>> Modified:
>> lldb/trunk/source/Utility/StringLexer.cpp
>>
>> Modified: lldb/trunk/source/Utility/StringLexer.cpp
>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Utility/StringLexer.cpp?rev=216304&r1=216303&r2=216304&view=diff
>> ==============================================================================
>> --- lldb/trunk/source/Utility/StringLexer.cpp (original)
>> +++ lldb/trunk/source/Utility/StringLexer.cpp Fri Aug 22 19:11:38 2014
>> @@ -55,7 +55,9 @@ StringLexer::Next ()
>> bool
>> StringLexer::HasAtLeast (Size s)
>> {
>> - return m_data.size()-m_position >= s;
>> + auto in_m_data = m_data.size()-m_position;
>> + auto in_putback = m_putback_data.size();
>> + return (in_m_data + in_putback >= s);
>> }
>>
>>
>> @@ -68,6 +70,10 @@ StringLexer::PutBack (Character c)
>> bool
>> StringLexer::HasAny (Character c)
>> {
>> + const auto begin(m_putback_data.begin());
>> + const auto end(m_putback_data.end());
>> + if (std::find(begin, end, c) != end)
>> + return true;
>> return m_data.find(c, m_position) != std::string::npos;
>> }
>>
>>
>>
>> _______________________________________________
>> lldb-commits mailing list
>> lldb-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
More information about the lldb-commits
mailing list