[llvm-commits] [dragonegg] r172176 - /dragonegg/trunk/src/Backend.cpp

Duncan Sands baldrick at free.fr
Fri Jan 11 03:43:54 PST 2013


Hi Benjamin,

>> --- dragonegg/trunk/src/Backend.cpp (original)
>> +++ dragonegg/trunk/src/Backend.cpp Thu Jan 10 23:58:20 2013
>> @@ -1795,7 +1795,7 @@
>>
>> static void InlineAsmDiagnosticHandler(const SMDiagnostic &D, void * /*Data*/,
>>                                         location_t loc) {
>> -  const char *Message = D.getMessage().c_str();
>> +  const char *Message = D.getMessage().str().c_str();
>
> This is a dangling pointer, str() creates a std::string temporary
> that's destroyed immediately. You can work around it by storing the
> std::string in a local variable.

indeed, thanks for pointing it out!  r172198.

Ciao, Duncan.



More information about the llvm-commits mailing list