[LLVMbugs] [Bug 10411] New: assertion when using exception and ARC
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Jul 19 11:57:28 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10411
Summary: assertion when using exception and ARC
Product: clang
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Frontend
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: devlists at shadowlab.org
CC: llvmbugs at cs.uiuc.edu
Clang (trunk 135497) failed to compile code that throw exception when ARC is
enabled.
It reaches an assertion in ActOnFinishFunctionBody().
For instance the following code failed to compile:
------- test.m
@interface NSException
+ (id)exception;
@end
void test() { @throw [NSException exception]; }
------------
% clang -fobjc-arc -c test.m
Assertion failed: (!ExprNeedsCleanups && "Unaccounted cleanups in function"),
function ActOnFinishFunctionBody, file SemaDecl.cpp, line 6536.
0 clang 0x000000010ec97842 _ZL15PrintStackTracePv + 34
…
5 clang 0x000000010ec97a45 __assert_rtn + 53
6 clang 0x000000010df12d23
clang::Sema::ActOnFinishFunctionBody(clang::Decl*, clang::Stmt*, bool) + 1347
7 clang 0x000000010de570c4
clang::Parser::ParseFunctionStatementBody(clang::Decl*,
clang::Parser::ParseScope&) + 244
8 clang 0x000000010de6212d
clang::Parser::ParseFunctionDefinition(clang::Parser::ParsingDeclarator&,
clang::Parser::ParsedTemplateInfo const&) + 1885
9 clang 0x000000010de267ab
clang::Parser::ParseDeclGroup(clang::Parser::ParsingDeclSpec&, unsigned int,
bool, clang::SourceLocation*, clang::Parser::ForRangeInit*) + 907
…
18 clang 0x000000010dbff68a cc1_main(char const**, char const**,
char const*, void*) + 5450
19 clang 0x000000010dc033d2 main + 706
20 clang 0x000000010dbfe134 start + 52
21 clang 0x000000000000002b start + 18446744069183905579
Stack dump:
0. Program arguments:
/Users/jddupas/Projects/OpenSource/llvm/release/Release+Asserts/bin/clang -cc1
-triple x86_64-apple-macosx10.7.0 -emit-obj -mrelax-all -disable-free
-main-file-name test.m -pic-level 1 -mdisable-fp-elim -masm-verbose
-munwind-tables -target-cpu core2 -target-linker-version 123.2.1 -coverage-file
test.o -resource-dir
/Users/jddupas/Projects/OpenSource/llvm/release/Release+Asserts/bin/../lib/clang/3.0
-ferror-limit 19 -fmessage-length 170 -stack-protector 1 -fblocks
-fobjc-runtime-has-arc -fobjc-runtime-has-weak -fobjc-nonfragile-abi
-fobjc-dispatch-method=mixed -fobjc-arc -fobjc-exceptions -fexceptions
-fdiagnostics-show-option -fcolor-diagnostics -o test.o -x objective-c test.m
1. <eof> parser at end of file
2. test.m:5:13: parsing function body 'test'
clang: error: unable to execute command: Illegal instruction: 4
clang: error: clang frontend command failed due to signal 2 (use -v to see
invocation)
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list