[llvm-bugs] [Bug 35939] New: Clang test Modules/odr_hash-Friend.cpp causes assertion failure "Cannot mangle injected class name type." at lib\AST\MicrosoftMangle.cpp:2478

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Jan 12 16:26:31 PST 2018


https://bugs.llvm.org/show_bug.cgi?id=35939

            Bug ID: 35939
           Summary: Clang test Modules/odr_hash-Friend.cpp causes
                    assertion failure "Cannot mangle injected class name
                    type." at lib\AST\MicrosoftMangle.cpp:2478
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: -New Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: rtrieu at google.com
                CC: llvm-bugs at lists.llvm.org

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

--

********************

-- 
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/20180113/b69cb59a/attachment.html>


More information about the llvm-bugs mailing list