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

            Bug ID: 43266
           Summary: Clang parser bug
           Product: clang
           Version: 8.0
          Hardware: PC
                OS: All
            Status: NEW
          Severity: release blocker
          Priority: P
         Component: C++
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected], [email protected],
                    [email protected], [email protected],
                    [email protected]

Following fails to compile for Clang 8.0.0+

template<class L> struct mp_size;

struct __mpf_struct
{
    int _mp_size;
};

struct X
{
    __mpf_struct m_data[1];

    void f()
    {
        if(((m_data)->_mp_size < 0 ? -1: (m_data)->_mp_size > 0) == 0)
        {
        }
    }
};

$ clang++ -std=c++14 bug.cpp -o bug
bug.cpp:14:23: error: no template named '_mp_size'; did you mean 'mp_size'?
        if(((m_data)->_mp_size < 0 ? -1: (m_data)->_mp_size > 0) == 0)
                      ^~~~~~~~
                      mp_size
bug.cpp:1:26: note: 'mp_size' declared here
template<class L> struct mp_size;
                         ^
bug.cpp:14:23: error: no member named '_mp_size' in '__mpf_struct'
        if(((m_data)->_mp_size < 0 ? -1: (m_data)->_mp_size > 0) == 0)
            ~~~~~~~~  ^
2 errors generated.
Dans-MacBook-Pro:scratch dcooke$ clang++ -std=c++14 bug.cpp -o bug
bug.cpp:14:23: error: no template named '_mp_size'; did you mean 'mp_size'?
        if(((m_data)->_mp_size < 0 ? -1: (m_data)->_mp_size > 0) == 0)
                      ^~~~~~~~
                      mp_size
bug.cpp:1:26: note: 'mp_size' declared here
template<class L> struct mp_size;
                         ^
bug.cpp:14:23: error: no member named '_mp_size' in '__mpf_struct'
        if(((m_data)->_mp_size < 0 ? -1: (m_data)->_mp_size > 0) == 0)
            ~~~~~~~~  ^
2 errors generated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to