<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Assert/crash (Destructor->isDefaulted() && !Destructor->doesThisDeclarationHaveABody() && !Destructor->isDeleted()) && "DefineImplicitDestructor - call it for implicit default dtor""
   href="https://bugs.llvm.org/show_bug.cgi?id=47002">47002</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Assert/crash (Destructor->isDefaulted() && !Destructor->doesThisDeclarationHaveABody() && !Destructor->isDeleted()) && "DefineImplicitDestructor - call it for implicit default dtor"
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>11.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows NT
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>release blocker
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>-New Bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>jvapen@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>htmldeveloper@gmail.com, llvm-bugs@lists.llvm.org, neeilans@live.com, richard-llvm@metafoo.co.uk
          </td>
        </tr></table>
      <p>
        <div>
        <pre>This doesn't have issues with LLVM 10.0.0

// E:\LLVM_11_0_0-RC1\bin\clang-cl.exe /nologo /c /GR /EHsc /std:c++17 
-fms-compatibility-version=19.22 t.cpp
struct A  
{
   __declspec(dllexport) explicit A() noexcept {}
   __declspec(dllexport) virtual ~A() noexcept  = default;
};

Result:

Assertion failed: (Destructor->isDefaulted() &&
!Destructor->doesThisDeclarationHaveABody() && !Destructor->isDeleted()) &&
"DefineImplicitDestructor - call it for implicit default dtor", file
C:\src\llvm_package_1100-rc1\llvm-project\clang\lib\Sema\SemaDeclCXX.cpp, line
13262
PLEASE submit a bug report to <a href="https://bugs.llvm.org/">https://bugs.llvm.org/</a> and include the crash
backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments:
E:\Development\JVA\Other\Software\LLVM_11_0_0-RC1\bin\clang-cl.exe /nologo /c
/GR /EHsc /std:c++17 -fms-compatibility-version=19.22 t.cpp
1.      t.cpp:5:2: current parser token ';'
2.      t.cpp:1:1: parsing struct/union/class body 'A'
// Stack trace without names
clang-cl: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 11.0.0
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir: E:\LLVM_11_0_0-RC1\bin
clang-cl: note: diagnostic msg:
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-cl: note: diagnostic msg: E:\Temp\t-f0c36e.cpp
clang-cl: note: diagnostic msg: E:\Temp\t-f0c36e.sh
clang-cl: note: diagnostic msg:

//t-f0c36e.cpp
# 1 "<built-in>"
# 1 "t.cpp"
struct A  
{
   __declspec(dllexport) explicit A() noexcept {}
   __declspec(dllexport) virtual ~A() noexcept  = default;
};

//t-f0c36e.sh
 "E:\\Development\\JVA\\Other\\Software\\LLVM_11_0_0-RC1\\bin\\clang-cl.exe"
"-cc1" "-triple" "x86_64-pc-windows-msvc19.22.0" "-emit-obj" "-mrelax-all"
"-mincremental-linker-compatible" "-disable-free" "-main-file-name" "t.cpp"
"-mrelocation-model" "pic" "-pic-level" "2" "-mframe-pointer=none"
"-relaxed-aliasing" "-fmath-errno" "-fno-rounding-math" "-mconstructor-aliases"
"-munwind-tables" "-target-cpu" "x86-64" "-mllvm" "-x86-asm-syntax=intel"
"-D_MT" "-flto-visibility-public-std" "--dependent-lib=libcmt"
"--dependent-lib=oldnames" "-stack-protector" "2" "-fcxx-exceptions"
"-fexceptions" "-fexternc-nounwind" "-fms-volatile" "-fdiagnostics-format"
"msvc" "-fdeprecated-macro" "-ferror-limit" "19" "-fmessage-length=172"
"-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility"
"-fms-compatibility-version=19.22" "-std=c++17" "-fdelayed-template-parsing"
"-fcolor-diagnostics" "-faddrsig" "-x" "c++" "t-f0c36e.cpp"</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>