[PATCH] D11341: [SemaTemplate] Detect instantiation of unparsed exceptions
Dimitry Andric
dimitry at andric.com
Fri Jul 24 04:49:32 PDT 2015
dim added a comment.
For fixing bug 24000, this patch works. Before the patch:
clang -std=c++11 -c pr24000.cpp
Assertion failed: (EST == EST_Dynamic && "EST case not considered earlier."), function CalledDecl, file /share/dim/src/llvm/trunk/tools/clang/lib/Sema/SemaDeclCXX.cpp, line 208.
After the patch:
clang -std=c++11 -c pr24000.cpp
pr24000.cpp:12:12: error: exception specification is not available until end of class definition
D<int> d;
^
pr24000.cpp:14:10: note: in instantiation of template class 'B<int>' requested here
B<int> b;
^
1 error generated.
This also works correctly for the FreeBSD devel/codeblocks port, which now results in this (expected) error:
In file included from cbthreadpool.cpp:18:
../../src/include/cbthreadpool.h:140:33: error: exception specification is not available until end of class definition
CountedPtr<wxSemaphore> m_semaphore;
^
http://reviews.llvm.org/D11341
More information about the cfe-commits
mailing list