On Apr 20, 2011, at 9:32 AM, Chris Lattner wrote:

> 
> On Apr 20, 2011, at 6:35 AM, Douglas Gregor wrote:
> 
>> Author: dgregor
>> Date: Wed Apr 20 08:35:54 2011
>> New Revision: 129849
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=129849&view=rev
>> Log:
>> Be sure to flush raw_string_ostream objects in the Objective-C
>> rewriter, from Eric Niebler!
> 
> Hey Doug,
> 
> Is this necessary?  The first one uses S.str() which does the flush.  I think 
> a better answer is to change the second to use S.str().

Yes. Crash caused by the 2nd one which I recently added and did not use 
S.str(). I will make the change.

- Thanks, Fariborz

> 
> -Chris
> 
>> 
>> Modified:
>>   cfe/trunk/lib/Rewrite/Rewriter.cpp
>> 
>> Modified: cfe/trunk/lib/Rewrite/Rewriter.cpp
>> URL: 
>> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Rewrite/Rewriter.cpp?rev=129849&r1=129848&r2=129849&view=diff
>> ==============================================================================
>> --- cfe/trunk/lib/Rewrite/Rewriter.cpp (original)
>> +++ cfe/trunk/lib/Rewrite/Rewriter.cpp Wed Apr 20 08:35:54 2011
>> @@ -300,6 +300,7 @@
>>  std::string SStr;
>>  llvm::raw_string_ostream S(SStr);
>>  To->printPretty(S, 0, PrintingPolicy(*LangOpts));
>> +  S.flush();
>>  const std::string &Str = S.str();
>> 
>>  ReplaceText(From->getLocStart(), Size, Str);
>> @@ -310,6 +311,7 @@
>>  std::string SStr;
>>  llvm::raw_string_ostream S(SStr);
>>  From->printPretty(S, 0, PrintingPolicy(*LangOpts));
>> +  S.flush();
>>  return SStr;
>> }
>> 
>> 
>> 
>> _______________________________________________
>> cfe-commits mailing list
>> [email protected]
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
> 
> _______________________________________________
> cfe-commits mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to