[LLVMbugs] [Bug 10631] Assertion 'isa<X>(Val) && "cast<Ty>() argument of incompatible type!' on invalid code

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Feb 2 03:43:51 PST 2015


http://llvm.org/bugs/show_bug.cgi?id=10631

Serge Pavlov <sepavloff at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |sepavloff at gmail.com
         Resolution|---                         |WORKSFORME

--- Comment #2 from Serge Pavlov <sepavloff at gmail.com> ---
Both examples are compiled now without abort with ToT:

$ clang --version
clang version 3.7.0 (trunk 227734)
Target: x86_64-unknown-linux-gnu
Thread model: posix

$ clang pr10631.cpp 
pr10631.cpp:1:10: error: unknown type name 'a'
template<a>struct eval{struct eval{
         ^
pr10631.cpp:1:31: error: nested redefinition of 'eval'
template<a>struct eval{struct eval{
                              ^
pr10631.cpp:1:19: note: previous definition is here
template<a>struct eval{struct eval{
                  ^                                                             
pr10631.cpp:1:36: error: expected ';' after struct                              
template<a>struct eval{struct eval{                                             
                                   ^                                            
                                   ;                                            
pr10631.cpp:1:36: error: expected '}'                                           
pr10631.cpp:1:23: note: to match this '{'                                       
template<a>struct eval{struct eval{
                      ^
pr10631.cpp:1:36: error: expected ';' after struct
template<a>struct eval{struct eval{
                                   ^
                                   ;
5 errors generated.

$ clang pr10613-2.cpp 
pr10613-2.cpp:3:3: error: member '__is_byte' has the same name as its class
  __is_byte {
  ^
pr10613-2.cpp:3:13: error: expected '= constant-expression' or end of
enumerator definition
  __is_byte {
            ^
pr10613-2.cpp:5:41: error: expected '}'
     template<> struct __is_byte<char> {
                                        ^
pr10613-2.cpp:2:14: note: to match this '{'
        enum {
             ^
pr10613-2.cpp:5:41: error: expected ';' after enum
     template<> struct __is_byte<char> {
                                        ^
                                        ;
pr10613-2.cpp:5:41: error: expected '}'
pr10613-2.cpp:1:41: note: to match this '{'
template<typename _Tp> struct __is_byte {
                                        ^
pr10613-2.cpp:5:41: error: expected ';' after struct
     template<> struct __is_byte<char> {
                                        ^
                                        ;
6 errors generated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150202/a0f3e3c6/attachment.html>


More information about the llvm-bugs mailing list