[llvm-bugs] [Bug 38374] New: nested class using NSDMI fails std::is_default_constructible

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Jul 30 12:37:26 PDT 2018


            Bug ID: 38374
           Summary: nested class using NSDMI fails
           Product: clang
           Version: trunk
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: rparolin at ea.com
                CC: dgregor at apple.com, llvm-bugs at lists.llvm.org

I'm seeing odd behavior in Clang when trying to determine if a nested class
using NSDMI is default constructible.  Has anyone seen this before?  I've seen
this on older versions of clang but it is reproducible on clang-trunk via


The Clang AST dump claims the default-ctor exists.

  `-CXXRecordDecl <line:5:5, line:10:5> line:5:12 struct inner definition
    |-DefinitionData pass_in_registers aggregate standard_layout
trivially_copyable literal has_constexpr_non_copy_move_ctor
    | |-DefaultConstructor exists non_trivial constexpr needs_implicit

In addition, there appears to be some wierdness where the static_asserts are
being suppressed based on their ordering.  ie.  The first static_assert fires
but others don't.

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/20180730/78da6b63/attachment.html>

More information about the llvm-bugs mailing list