[llvm-bugs] [Bug 28113] New: missing diagnostics with invalid names used in template non-type parameter declaration

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Jun 13 11:01:21 PDT 2016


https://llvm.org/bugs/show_bug.cgi?id=28113

            Bug ID: 28113
           Summary: missing diagnostics with invalid names used in
                    template non-type parameter declaration
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: ensadc at mailnesia.com
                CC: dgregor at apple.com, llvm-bugs at lists.llvm.org
    Classification: Unclassified

None of the following trigger a diagnostic
-----
struct T { template<int> struct U; };

template< int T::U >
struct X;

template< int T::U<int> >
struct X;

template< int operator+ >
struct X;

template< int operator int >
struct X;

template< int ~decltype(0) >
struct X;
-----

And the following code result in "expected a class name after '~' to name a
destructor", even though a destructor is obviously not allowed here.
-----
template< int ~ >
struct X;

-- 
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/20160613/93d9ac04/attachment.html>


More information about the llvm-bugs mailing list