Quuxplusone / LLVMBugzillaTest

0 stars 0 forks source link

Clang test Modules/odr_hash-Friend.cpp causes assertion failure "Cannot mangle injected class name type." at lib\AST\MicrosoftMangle.cpp:2478 #34912

Open Quuxplusone opened 6 years ago

Quuxplusone commented 6 years ago
Bugzilla Link PR35939
Status NEW
Importance P enhancement
Reported by rtrieu@google.com
Reported on 2018-01-12 16:26:31 -0800
Last modified on 2018-01-17 03:41:10 -0800
Version unspecified
Hardware PC Linux
CC dxf@google.com, hans@chromium.org, llvm-bugs@lists.llvm.org, ruiu@google.com
Fixed by commit(s)
Attachments
Blocks
Blocked by
See also PR35473
Clang test Modules/odr_hash-Friend.cpp was causing an assertion failure on
Windows buildbots.  The test has been disabled for Windows.

Assertion failed:
Cannot mangle injected class name type.

UNREACHABLE executed at C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\AST\MicrosoftMangle.cpp:2478!

Output from buildbot:

FAIL: Clang :: Modules/odr_hash-Friend.cpp (8263 of 35208)
******************** TEST 'Clang :: Modules/odr_hash-Friend.cpp' FAILED
********************
Script:
--
rm -rf C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\tools\clang\test\Modules\Output\odr_hash-Friend.cpp.tmp
c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-win\build\bin\clang.EXE -
cc1 -internal-isystem c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\lib\clang\7.0.0\include -nostdsysteminc -fmodules -fmodules-cache-
path=C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\tools\clang\test\Modules\Output\odr_hash-Friend.cpp.tmp/modules.cache
-I C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\test\Modules/Inputs/odr_hash-Friend   -emit-obj -o
/dev/null   -fmodules   -fimplicit-module-maps   -fmodules-cache-path=C:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\tools\clang\test\Modules\Output\odr_hash-Friend.cpp.tmp/modules.cache
-std=c++11 -x c++ C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\test\Modules\odr_hash-Friend.cpp -verify
--
Exit Code: -2147483645

Command Output (stdout):
--
$ "rm" "-rf" "C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\tools\clang\test\Modules\Output\odr_hash-Friend.cpp.tmp"
$ "c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\bin\clang.EXE" "-cc1" "-internal-isystem" "c:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\build\lib\clang\7.0.0\include" "-
nostdsysteminc" "-fmodules" "-fmodules-cache-path=C:\ps4-buildslave2\llvm-clang-
x86_64-expensive-checks-win\build\tools\clang\test\Modules\Output\odr_hash-
Friend.cpp.tmp/modules.cache" "-I" "C:\ps4-buildslave2\llvm-clang-x86_64-
expensive-checks-win\llvm\tools\clang\test\Modules/Inputs/odr_hash-Friend" "-
emit-obj" "-o" "/dev/null" "-fmodules" "-fimplicit-module-maps" "-fmodules-
cache-path=C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\build\tools\clang\test\Modules\Output\odr_hash-
Friend.cpp.tmp/modules.cache" "-std=c++11" "-x" "c++" "C:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\llvm\tools\clang\test\Modules\odr_hash-
Friend.cpp" "-verify"
# command stderr:
Cannot mangle injected class name type.

UNREACHABLE executed at C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\AST\MicrosoftMangle.cpp:2478!

LLVMSymbolizer: error reading file: PDB Error: Unable to load PDB.  Make sure
the file exists and is readable.  Calling loadDataForExe

LLVMSymbolizer: error reading file: PDB Error: Unable to load PDB.  Make sure
the file exists and is readable.  Calling loadDataForExe

LLVMSymbolizer: error reading file: PDB Error: Unable to load PDB.  Make sure
the file exists and is readable.  Calling loadDataForExe

#0 0x00007ff6ad46ec5c HandleAbort c:\ps4-buildslave2\llvm-clang-x86_64-
expensive-checks-win\llvm\lib\support\windows\signals.inc:411:0

#1 0x00007fff489e0f78 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0x80f78)

#2 0x00007fff489e2b99 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0x82b99)

#3 0x00007ff6ad485523 llvm::llvm_unreachable_internal(char const *,char const
*,unsigned int) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\lib\support\errorhandling.cpp:195:0

#4 0x00007ff6b24ca636 `anonymous
namespace'::MicrosoftCXXNameMangler::mangleType c:\ps4-buildslave2\llvm-clang-
x86_64-expensive-checks-win\llvm\tools\clang\lib\ast\microsoftmangle.cpp:2479:0

#5 0x00007ff6b24c4656 `anonymous
namespace'::MicrosoftCXXNameMangler::mangleType c:\ps4-buildslave2\llvm-clang-
x86_64-expensive-checks-win\llvm\tools\clang\include\clang\ast\typenodes.def:103:0

#6 0x00007ff6b24c797f `anonymous
namespace'::MicrosoftCXXNameMangler::mangleArgumentType c:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\ast\microsoftmangle.cpp:1635:0

#7 0x00007ff6b24c4f92 `anonymous
namespace'::MicrosoftCXXNameMangler::mangleFunctionType c:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\ast\microsoftmangle.cpp:2035:0

#8 0x00007ff6b24c2f98 `anonymous
namespace'::MicrosoftCXXNameMangler::mangleFunctionEncoding c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\ast\microsoftmangle.cpp:473:0

#9 0x00007ff6b24c2e1b `anonymous namespace'::MicrosoftCXXNameMangler::mangle
c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\ast\microsoftmangle.cpp:439:0

#10 0x00007ff6b24c0453 `anonymous
namespace'::MicrosoftMangleContextImpl::mangleCXXName c:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\ast\microsoftmangle.cpp:2612:0

#11 0x00007ff6b231c84c clang::MangleContext::mangleName(class clang::NamedDecl
const *,class llvm::raw_ostream &) c:\ps4-buildslave2\llvm-clang-x86_64-
expensive-checks-win\llvm\tools\clang\lib\ast\mangle.cpp:153:0

#12 0x00007ff6ada73621 getMangledNameImpl c:\ps4-buildslave2\llvm-clang-x86_64-
expensive-checks-win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:789:0

#13 0x00007ff6ada67507 clang::CodeGen::CodeGenModule::getMangledName(class
clang::GlobalDecl) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:869:0

#14 0x00007ff6ada69c62 clang::CodeGen::CodeGenModule::EmitGlobal(class
clang::GlobalDecl) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:1936:0

#15 0x00007ff6ada64532 clang::CodeGen::CodeGenModule::EmitTopLevelDecl(class
clang::Decl *) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:4191:0

#16 0x00007ff6b290b7ee `anonymous
namespace'::CodeGeneratorImpl::HandleTopLevelDecl c:\ps4-buildslave2\llvm-clang-
x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\modulebuilder.cpp:160:0

#17 0x00007ff6b29048fb clang::BackendConsumer::HandleTopLevelDecl(class
clang::DeclGroupRef) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenaction.cpp:170:0

#18 0x00007ff6b2904618 clang::BackendConsumer::HandleInterestingDecl(class
clang::DeclGroupRef) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenaction.cpp:196:0

#19 0x00007ff6b00403d9 clang::ASTReader::PassInterestingDeclToConsumer(class
clang::Decl *) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\serialization\astreader.cpp:7454:0

#20 0x00007ff6b0269658 clang::ASTReader::PassInterestingDeclsToConsumer(void)
c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\serialization\astreaderdecl.cpp:3714:0

#21 0x00007ff6b0054e44 clang::ASTReader::FinishedDeserializing(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\serialization\astreader.cpp:10709:0

#22 0x00007ff6b00d3cc7
clang::ExternalASTSource::Deserializing::~Deserializing(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\include\clang\ast\externalastsource.h:92:0

#23 0x00007ff6b0053ec7 clang::ASTReader::GetExternalDeclStmt(unsigned __int64)
c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\serialization\astreader.cpp:7257:0

#24 0x00007ff6b1fbc73a clang::LazyOffsetPtr<class clang::Stmt,unsigned
__int64,{[thunk]:clang::ExternalASTSource::`vcall'{32,{flat}}'
}',0}>::get(class clang::ExternalASTSource *)const  c:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\llvm\tools\clang\include\clang\ast\externalastsource.h:402:0

#25 0x00007ff6b1f9fc0e clang::FunctionDecl::getBody(class clang::FunctionDecl
const * &)const  c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\ast\decl.cpp:2621:0

#26 0x00007ff6adf927bd clang::FunctionDecl::getBody(void)const  c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\include\clang\ast\decl.h:1970:0

#27 0x00007ff6add65274 clang::CodeGen::CodeGenFunction::GenerateCode(class
clang::GlobalDecl,class llvm::Function *,class clang::CodeGen::CGFunctionInfo
const &) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenfunction.cpp:1274:0

#28 0x00007ff6ada6dcc2
clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(class
clang::GlobalDecl,class llvm::GlobalValue *) c:\ps4-buildslave2\llvm-clang-
x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:3449:0

#29 0x00007ff6ada6d99d
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(class
clang::GlobalDecl,class llvm::GlobalValue *) c:\ps4-buildslave2\llvm-clang-
x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:2141:0

#30 0x00007ff6ada7045d clang::CodeGen::CodeGenModule::EmitDeferred(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:1567:0

#31 0x00007ff6ada5edaa clang::CodeGen::CodeGenModule::Release(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\codegenmodule.cpp:394:0

#32 0x00007ff6b290b8cd `anonymous
namespace'::CodeGeneratorImpl::HandleTranslationUnit c:\ps4-buildslave2\llvm-
clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\modulebuilder.cpp:269:0

#33 0x00007ff6b2904ac7 clang::BackendConsumer::HandleTranslationUnit(class
clang::ASTContext &) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\codegen\codegenaction.cpp:238:0

#34 0x00007ff6afef7851 clang::ParseAST(class clang::Sema &,bool,bool) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\parse\parseast.cpp:161:0

#35 0x00007ff6ae47e35b clang::ASTFrontendAction::ExecuteAction(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\frontend\frontendaction.cpp:1007:0

#36 0x00007ff6b28f8f66 clang::CodeGenAction::ExecuteAction(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\codegen\codegenaction.cpp:1032:0

#37 0x00007ff6ae47ddb7 clang::FrontendAction::Execute(void) c:\ps4-
buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\frontend\frontendaction.cpp:908:0

#38 0x00007ff6ae3e157a clang::CompilerInstance::ExecuteAction(class
clang::FrontendAction &) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\lib\frontend\compilerinstance.cpp:992:0

#39 0x00007ff6ae63e0db clang::ExecuteCompilerInvocation(class
clang::CompilerInstance *) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-
checks-win\llvm\tools\clang\lib\frontendtool\executecompilerinvocation.cpp:252:0

#40 0x00007ff6a9d57754 cc1_main(class llvm::ArrayRef<char const *>,char const
*,void *) c:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-
win\llvm\tools\clang\tools\driver\cc1_main.cpp:221:0

#41 0x00007ff6a9d3ae5d ExecuteCC1Tool c:\ps4-buildslave2\llvm-clang-x86_64-
expensive-checks-win\llvm\tools\clang\tools\driver\driver.cpp:309:0

#42 0x00007ff6a9d3b741 main c:\ps4-buildslave2\llvm-clang-x86_64-expensive-
checks-win\llvm\tools\clang\tools\driver\driver.cpp:388:0

#43 0x00007ff6b26123f4 invoke_main
f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:65:0

#44 0x00007ff6b26122b7 __scrt_common_main_seh
f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253:0

#45 0x00007ff6b261217e __scrt_common_main
f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:296:0

#46 0x00007ff6b2612419 mainCRTStartup
f:\dd\vctools\crt\vcstartup\src\startup\exe_main.cpp:17:0

#47 0x00007fff50991fe4 (C:\WINDOWS\System32\KERNEL32.DLL+0x11fe4)

#48 0x00007fff5351efb1 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x6efb1)

error: command failed with exit status: 0x80000003

--

********************
Quuxplusone commented 6 years ago

Is this one fixed now with the commits mentioned in PR35981?

Quuxplusone commented 6 years ago
(In reply to Hans Wennborg from comment #1)
> Is this one fixed now with the commits mentioned in PR35981?

Oh, just looked at r322593; I guess it's not.