https://llvm.org/bugs/show_bug.cgi?id=31444
Bug ID: 31444 Summary: Assertion failed: VTableUses should be empty before it is discarded Product: clang Version: trunk Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P Component: Frontend Assignee: unassignedclangb...@nondot.org Reporter: tras...@gmail.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified $ clang.exe -v clang version 4.0.0 (trunk 290182) Target: x86_64-pc-windows-msvc typedef unsigned uint64_t; namespace { class File { virtual bool isOpen() ; }; } namespace { class FileWriter: File { }; } namespace fileaccesslayer { class QtFileWriter: FileWriter { }; } namespace { class { uint64_t close() { close<uint32_t>; } template <typename T> void close() { new fileaccesslayer::QtFileWriter; } } } $ clang.exe "-cc1" "-triple" "x86_64-pc-windows-msvc19.0.0" "-emit-obj" "-mincremental-linker-compatible" "-disable-free" "-main-file-name" "Rcd30ProcessingChainFactoryHelper.cpp" "-mrelocation-model" "pic" "-pic-level" "2" "-mthread-model" "posix" "-relaxed-aliasing" "-fmath-errno" "-masm-verbose" "-mconstructor-aliases" "-munwind-tables" "-target-cpu" "x86-64" "--dependent-lib=msvcrt" "--dependent-lib=oldnames" "-stack-protector" "2" "-gcodeview" "-fcxx-exceptions" "-fexceptions" "-fms-volatile" "-fdefault-calling-conv=cdecl" "-fdiagnostics-format" "msvc" "-momit-leaf-frame-pointer" "-gcodeview" "-debug-info-kind=limited" "-debugger-tuning=gdb" "-ffunction-sections" "-O2" "-fdeprecated-macro" "-ferror-limit" "1" "-fmessage-length" "0" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.0" "-std=c++14" "-fdelayed-template-parsing" "-fdiagnostics-show-option" "-vectorize-loops" "-vectorize-slp" "-fopenmp" -w R.cpp R.cpp(23,7): error: unknown type name 'uint32_t'; did you mean 'uint64_t'? close<uint32_t>; ^~~~~~~~ uint64_t R.cpp(1,18): note: 'uint64_t' declared here typedef unsigned uint64_t; ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] Assertion failed: S.VTableUses.empty() && "VTableUses should be empty before it is discarded.", file tools\clang\include\clang/Sema/Sema.h, line 7180 #4 _wassert d:\th\minkernel\crts\ucrt\src\appcrt\startup\assert.cpp:404:0 #5 clang::Sema::SavePendingInstantiationsAndVTableUsesRAII::~SavePendingInstantiationsAndVTableUsesRAII(void) tools\clang\include\clang\sema\sema.h:7181:0 #6 clang::Sema::InstantiateFunctionDefinition(class clang::SourceLocation,class clang::FunctionDecl *,bool,bool,bool) tools\clang\lib\sema\sematemplateinstantiatedecl.cpp:3749:0 #7 clang::Sema::PerformPendingInstantiations(bool) tools\clang\lib\sema\sematemplateinstantiatedecl.cpp:4930:0 #8 clang::Sema::ActOnEndOfTranslationUnit(void) tools\clang\lib\sema\sema.cpp:728:0 #9 clang::Parser::ParseTopLevelDecl(class clang::OpaquePtr<class clang::DeclGroupRef> &) tools\clang\lib\parse\parser.cpp:618:0 #10 clang::ParseAST(class clang::Sema &,bool,bool) tools\clang\lib\parse\parseast.cpp:147:0 -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs