[cfe-commits] r68975 - in /cfe/trunk: lib/CodeGen/CodeGenModule.cpp test/CodeGen/illegal-UTF8.m
steve naroff
snaroff at apple.com
Mon Apr 13 12:52:59 PDT 2009
On Apr 13, 2009, at 3:43 PM, Eli Friedman wrote:
> On Mon, Apr 13, 2009 at 12:08 PM, Steve Naroff <snaroff at apple.com>
> wrote:
>> Author: snaroff
>> Date: Mon Apr 13 14:08:08 2009
>> New Revision: 68975
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=68975&view=rev
>> Log:
>> Fixed crasher in <rdar://problem/6780904> [irgen] Assertion failed:
>> (Result == conversionOK && "UTF-8 to UTF-16 conversion failed"),
>> function GetAddrOfConstantCFString, file CodeGenModule.cpp, line
>> 1063.
>
> We should not be letting invalid strings through Sema. Either the
> Lexer or Sema needs to deal with this; it needs to either error out or
> warn and "fix" the string to use a 0xFFFD.
>
> I would suggest reverting this fix because it does nothing but hide
> the issue.
>
Are you suggesting the following is illegal?
int main(int argc, char *argv[]) {
printf("\xff\xff___WAIT___\n");
}
GCC accepts this and prints the following:
[steve-naroffs-imac-2:~/llvm/tools/clang] snaroff% ./a.out
??___WAIT___
snaroff
> -Eli
More information about the cfe-commits
mailing list