[LLVMbugs] [Bug 12778] New: Error recovery can trigger Assertion `i < getNumParams() && "Illegal param #"' (Decl.h:1820)
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Wed May 9 12:13:54 PDT 2012
http://llvm.org/bugs/show_bug.cgi?id=12778
Bug #: 12778
Summary: Error recovery can trigger Assertion `i <
getNumParams() && "Illegal param #"' (Decl.h:1820)
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: hfinkel at anl.gov
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 8521
--> http://llvm.org/bugs/attachment.cgi?id=8521
reduced test case (provided by C.S.)
Running clang trunk on x86_64 on:
void operator delete() throw(void*);
pointer allocate(size_type __n, const void* = 0) {
return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
results in:
In file included from prog.cpp:1:
prog.cpp:1:7: error: 'operator delete' must have at least one parameter.
void operator delete() throw(void*);
^
prog.cpp:2:12: error: unknown type name 'pointer'
pointer allocate(size_type __n, const void* = 0) {
^
prog.cpp:2:29: error: unknown type name 'size_type'
pointer allocate(size_type __n, const void* = 0) {
^
prog.cpp:3:23: error: unknown type name '_Tp'
return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
^
clang:
/src/llvm-trunk-writable/tools/clang/lib/Sema/../../include/clang/AST/Decl.h:1820:
clang::ParmVarDecl* clang::FunctionDecl::getParamDecl(unsigned int): Assertion
`i < getNumParams() && "Illegal param #"' failed.
--
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