<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 - Clang test Modules/odr_hash-Friend.cpp causes assertion failure "Cannot mangle injected class name type." at lib\AST\MicrosoftMangle.cpp:2478"
href="https://bugs.llvm.org/show_bug.cgi?id=35939">35939</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Clang test Modules/odr_hash-Friend.cpp causes assertion failure "Cannot mangle injected class name type." at lib\AST\MicrosoftMangle.cpp:2478
</td>
</tr>
<tr>
<th>Product</th>
<td>clang
</td>
</tr>
<tr>
<th>Version</th>
<td>unspecified
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>enhancement
</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>rtrieu@google.com
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org
</td>
</tr></table>
<p>
<div>
<pre>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
--
********************</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>