[llvm-bugs] [Bug 45498] New: [ICE] Assertion failed: (!findSpecializationImpl(Specializations, CorrectInsertPos, SETraits::getTemplateArgs(Entry)) && InsertPos == CorrectInsertPos && "given incorrect InsertPos for specialization")
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Apr 10 13:02:25 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=45498
Bug ID: 45498
Summary: [ICE] Assertion failed:
(!findSpecializationImpl(Specializations,
CorrectInsertPos, SETraits::getTemplateArgs(Entry)) &&
InsertPos == CorrectInsertPos && "given incorrect
InsertPos for specialization")
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: C++2a
Assignee: unassignedclangbugs at nondot.org
Reporter: eniebler at boost.org
CC: blitzrakete at gmail.com, erik.pilkington at gmail.com,
llvm-bugs at lists.llvm.org, richard-llvm at metafoo.co.uk
This only seems to happen when building with -jN for N>1.
Assertion failed: (!findSpecializationImpl(Specializations, CorrectInsertPos,
SETraits::getTemplateArgs(Entry)) && InsertPos == CorrectInsertPos && "given
incorrect InsertPos for specialization"), function addSpecializationImpl, file
/Users/eniebler/llvm/clang/lib/AST/DeclTemplate.cpp, line 297.
Stack dump:
0. Program arguments: /Users/eniebler/llvm-install/bin/clang++
-I/Users/eniebler/Dropbox (Facebook)/home/Code/Code/libunifex/source/../include
-I/Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex-build-clang-trunk/include -isysroot
/Applications/Xcode_10.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk
-fcoroutines-ts -std=gnu++2a -o
CMakeFiles/produce_on_consume_via.dir/produce_on_consume_via.cpp.o -c
/Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/examples/produce_on_consume_via.cpp
1. <eof> parser at end of file
2. /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/sync_wait.hpp:181:10:
instantiating function definition
'unifex::_sync_wait_cpo::_fn::operator()<unifex::_tfx::_sender<unifex::_tfx::_sender<unifex::_reduce::_sender<unifex::_adapt_stream::_adapted<unifex::_adapt_stream::_adapted<unifex::_next_adapt::_stream<unifex::_range::stream,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/transform_stream.hpp:29:37)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/on_stream.hpp:29:11),
void>::type, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/typed_via_stream.hpp:29:11),
void>::type, unifex::unit, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/for_each.hpp:55:15)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/for_each.hpp:59:11)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/examples/produce_on_consume_via.cpp:43:7)>::type,
unifex::unstoppable_token, unifex::unit>'
3. /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/sender_concepts.hpp:339:17:
instantiating function definition
'unifex::_connect::_fn::_select_impl<unifex::_tfx::_sender<unifex::_tfx::_sender<unifex::_reduce::_sender<unifex::_adapt_stream::_adapted<unifex::_adapt_stream::_adapted<unifex::_next_adapt::_stream<unifex::_range::stream,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/transform_stream.hpp:29:37)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/on_stream.hpp:29:11),
void>::type, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/typed_via_stream.hpp:29:11),
void>::type, unifex::unit, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/for_each.hpp:55:15)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/for_each.hpp:59:11)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/examples/produce_on_consume_via.cpp:43:7)>::type,
unifex::_sync_wait::_receiver<unifex::unit, unifex::unstoppable_token
&&>::type>'
4. /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/sender_concepts.hpp:339:17:
instantiating function definition
'unifex::_connect::_fn::_select_impl<unifex::_tfx::_sender<unifex::_reduce::_sender<unifex::_adapt_stream::_adapted<unifex::_adapt_stream::_adapted<unifex::_next_adapt::_stream<unifex::_range::stream,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/transform_stream.hpp:29:37)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/on_stream.hpp:29:11),
void>::type, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/typed_via_stream.hpp:29:11),
void>::type, unifex::unit, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/for_each.hpp:55:15)>::type,
(lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/source/../include/unifex/for_each.hpp:59:11)>::type,
unifex::_tfx::_receiver<unifex::_sync_wait::_receiver<unifex::unit,
unifex::unstoppable_token &&>::type, (lambda at /Users/eniebler/Dropbox
(Facebook)/home/Code/Code/libunifex/examples/produce_on_consume_via.cpp:43:7)>::type>'
0 clang++ 0x000000010d8a6bb5
llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 37
1 clang++ 0x000000010d8a5998 llvm::sys::RunSignalHandlers() +
248
2 clang++ 0x000000010d8a60b8
llvm::sys::CleanupOnSignal(unsigned long) + 216
3 clang++ 0x000000010d7f1b1a (anonymous
namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) + 106
4 clang++ 0x000000010d7f1c7e CrashRecoverySignalHandler(int)
+ 110
5 libsystem_platform.dylib 0x00007fff686f6b1d _sigtramp + 29
6 libdyld.dylib 0x00007fff684e6065 dyldGlobalLockRelease() + 0
7 libsystem_c.dylib 0x00007fff685cca1c abort + 120
8 libsystem_c.dylib 0x00007fff685cbcd6 err + 0
9 clang++ 0x00000001113dba53 void
clang::RedeclarableTemplateDecl::addSpecializationImpl<clang::VarTemplateDecl,
clang::VarTemplateSpecializationDecl>(llvm::FoldingSetVector<clang::VarTemplateSpecializationDecl,
llvm::SmallVector<clang::VarTemplateSpecializationDecl*, 8u> >&,
clang::VarTemplateSpecializationDecl*, void*) (.cold.5) + 35
10 clang++ 0x000000010f9d967b void
clang::RedeclarableTemplateDecl::addSpecializationImpl<clang::VarTemplateDecl,
clang::VarTemplateSpecializationDecl>(llvm::FoldingSetVector<clang::VarTemplateSpecializationDecl,
llvm::SmallVector<clang::VarTemplateSpecializationDecl*, 8u> >&,
clang::VarTemplateSpecializationDecl*, void*) + 395
11 clang++ 0x000000010f705cb7
clang::TemplateDeclInstantiator::VisitVarTemplateSpecializationDecl(clang::VarTemplateDecl*,
clang::VarDecl*, void*, clang::TemplateArgumentListInfo const&,
llvm::ArrayRef<clang::TemplateArgument>, clang::VarTemplateSpecializationDecl*)
+ 375
12 clang++ 0x000000010f709325
clang::Sema::BuildVarTemplateInstantiation(clang::VarTemplateDecl*,
clang::VarDecl*, clang::TemplateArgumentList const&,
clang::TemplateArgumentListInfo const&,
llvm::SmallVectorImpl<clang::TemplateArgument>&, clang::SourceLocation, void*,
llvm::SmallVector<clang::Sema::LateInstantiatedAttribute, 16u>*,
clang::LocalInstantiationScope*) + 501
13 clang++ 0x000000010f5d2f8d
clang::Sema::CheckVarTemplateId(clang::VarTemplateDecl*, clang::SourceLocation,
clang::SourceLocation, clang::TemplateArgumentListInfo const&) + 1677
14 clang++ 0x000000010f5d3b0a
clang::Sema::CheckVarTemplateId(clang::CXXScopeSpec const&,
clang::DeclarationNameInfo const&, clang::VarTemplateDecl*,
clang::SourceLocation, clang::TemplateArgumentListInfo const*) + 42
15 clang++ 0x000000010f5d42ca
clang::Sema::BuildTemplateIdExpr(clang::CXXScopeSpec const&,
clang::SourceLocation, clang::LookupResult&, bool,
clang::TemplateArgumentListInfo const*) + 314
16 clang++ 0x000000010f6d556b clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformUnresolvedLookupExpr(clang::UnresolvedLookupExpr*)
+ 1227
17 clang++ 0x000000010f6cba6e clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformBinaryOperator(clang::BinaryOperator*)
+ 110
18 clang++ 0x000000010f6e9666 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCondition(clang::SourceLocation,
clang::VarDecl*, clang::Expr*, clang::Sema::ConditionKind) + 150
19 clang++ 0x000000010f6e6354 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformIfStmt(clang::IfStmt*) + 148
20 clang++ 0x000000010f6e64e2 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformIfStmt(clang::IfStmt*) + 546
21 clang++ 0x000000010f6e09a6 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCompoundStmt(clang::CompoundStmt*,
bool) + 534
22 clang++ 0x000000010f6c3d0f
clang::Sema::SubstStmt(clang::Stmt*, clang::MultiLevelTemplateArgumentList
const&) + 79
23 clang++ 0x000000010f7083c2
clang::Sema::InstantiateFunctionDefinition(clang::SourceLocation,
clang::FunctionDecl*, bool, bool, bool) + 3842
24 clang++ 0x000000010efbf07e
clang::Sema::runWithSufficientStackSpace(clang::SourceLocation,
llvm::function_ref<void ()>) + 46
25 clang++ 0x000000010f666558
clang::Sema::DeduceReturnType(clang::FunctionDecl*, clang::SourceLocation,
bool) + 760
26 clang++ 0x000000010f2836d7
clang::Sema::DiagnoseUseOfDecl(clang::NamedDecl*,
llvm::ArrayRef<clang::SourceLocation>, clang::ObjCInterfaceDecl const*, bool,
bool, clang::ObjCInterfaceDecl*) + 5223
27 clang++ 0x000000010f54fac2
FinishOverloadedCallExpr(clang::Sema&, clang::Scope*, clang::Expr*,
clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*,
clang::OverloadCandidateSet*, clang::OverloadCandidate**,
clang::OverloadingResult, bool) + 162
28 clang++ 0x000000010f54f9d4
clang::Sema::BuildOverloadedCallExpr(clang::Scope*, clang::Expr*,
clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool,
bool) + 596
29 clang++ 0x000000010f289ea6
clang::Sema::BuildCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool)
+ 1734
30 clang++ 0x000000010f6cfa74 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 228
31 clang++ 0x000000010f6b77bd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 1869
32 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
33 clang++ 0x000000010f6bc5af
clang::Sema::SubstType(clang::QualType, clang::MultiLevelTemplateArgumentList
const&, clang::SourceLocation, clang::DeclarationName) + 143
34 clang++ 0x000000010f5ca1c9
clang::Sema::CheckTemplateIdType(clang::TemplateName, clang::SourceLocation,
clang::TemplateArgumentListInfo&) + 4137
35 clang++ 0x000000010f6d9154 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName) + 2500
36 clang++ 0x000000010f6b8d4c clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 7388
37 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
38 clang++ 0x000000010f6cf620 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCXXUnresolvedConstructExpr(clang::CXXUnresolvedConstructExpr*)
+ 32
39 clang++ 0x000000010f6cf9cd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 61
40 clang++ 0x000000010f6b77bd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 1869
41 clang++ 0x000000010f6bcd10
clang::Sema::SubstFunctionDeclType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName, clang::CXXRecordDecl*, clang::Qualifiers) + 1824
42 clang++ 0x000000010f6ff8ab
clang::TemplateDeclInstantiator::SubstFunctionType(clang::FunctionDecl*,
llvm::SmallVectorImpl<clang::ParmVarDecl*>&) + 251
43 clang++ 0x000000010f6fc5ef
clang::TemplateDeclInstantiator::VisitCXXMethodDecl(clang::CXXMethodDecl*,
clang::TemplateParameterList*,
llvm::Optional<clang::ASTTemplateArgumentListInfo const*>,
clang::TemplateDeclInstantiator::RewriteKind) + 799
44 clang++ 0x000000010f70c3d9 void llvm::function_ref<void
()>::callback_fn<clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)::$_0>(long) + 25
45 clang++ 0x000000010efbf07e
clang::Sema::runWithSufficientStackSpace(clang::SourceLocation,
llvm::function_ref<void ()>) + 46
46 clang++ 0x000000010f706099
clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&) + 201
47 clang++ 0x000000010f6601f5
clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*,
llvm::SmallVectorImpl<clang::DeducedTemplateArgument>&, unsigned int,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl<clang::Sema::OriginalCallArg> const*, bool,
llvm::function_ref<bool ()>) + 2453
48 clang++ 0x000000010f661d93
clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*,
clang::TemplateArgumentListInfo*, llvm::ArrayRef<clang::Expr*>,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool,
llvm::function_ref<bool (llvm::ArrayRef<clang::QualType>)>) + 2323
49 clang++ 0x000000010f53a741
clang::Sema::AddMethodTemplateCandidate(clang::FunctionTemplateDecl*,
clang::DeclAccessPair, clang::CXXRecordDecl*, clang::TemplateArgumentListInfo*,
clang::QualType, clang::Expr::Classification, llvm::ArrayRef<clang::Expr*>,
clang::OverloadCandidateSet&, bool, bool, clang::OverloadCandidateParamOrder) +
577
50 clang++ 0x000000010f53af0a
clang::Sema::AddMethodCandidate(clang::DeclAccessPair, clang::QualType,
clang::Expr::Classification, llvm::ArrayRef<clang::Expr*>,
clang::OverloadCandidateSet&, bool, clang::OverloadCandidateParamOrder) + 234
51 clang++ 0x000000010f558801
clang::Sema::BuildCallToObjectOfClassType(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>,
clang::SourceLocation) + 1169
52 clang++ 0x000000010f289fa7
clang::Sema::BuildCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool)
+ 1991
53 clang++ 0x000000010f6cfa74 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 228
54 clang++ 0x000000010f6b77bd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 1869
55 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
56 clang++ 0x000000010f6bc5af
clang::Sema::SubstType(clang::QualType, clang::MultiLevelTemplateArgumentList
const&, clang::SourceLocation, clang::DeclarationName) + 143
57 clang++ 0x000000010f5ca1c9
clang::Sema::CheckTemplateIdType(clang::TemplateName, clang::SourceLocation,
clang::TemplateArgumentListInfo&) + 4137
58 clang++ 0x000000010f6d9154 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName) + 2500
59 clang++ 0x000000010f6b8d4c clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 7388
60 clang++ 0x000000010f6bcd10
clang::Sema::SubstFunctionDeclType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName, clang::CXXRecordDecl*, clang::Qualifiers) + 1824
61 clang++ 0x000000010f6ff8ab
clang::TemplateDeclInstantiator::SubstFunctionType(clang::FunctionDecl*,
llvm::SmallVectorImpl<clang::ParmVarDecl*>&) + 251
62 clang++ 0x000000010f6fc5ef
clang::TemplateDeclInstantiator::VisitCXXMethodDecl(clang::CXXMethodDecl*,
clang::TemplateParameterList*,
llvm::Optional<clang::ASTTemplateArgumentListInfo const*>,
clang::TemplateDeclInstantiator::RewriteKind) + 799
63 clang++ 0x000000010f70c3d9 void llvm::function_ref<void
()>::callback_fn<clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)::$_0>(long) + 25
64 clang++ 0x000000010efbf07e
clang::Sema::runWithSufficientStackSpace(clang::SourceLocation,
llvm::function_ref<void ()>) + 46
65 clang++ 0x000000010f706099
clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&) + 201
66 clang++ 0x000000010f6601f5
clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*,
llvm::SmallVectorImpl<clang::DeducedTemplateArgument>&, unsigned int,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl<clang::Sema::OriginalCallArg> const*, bool,
llvm::function_ref<bool ()>) + 2453
67 clang++ 0x000000010f661d93
clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*,
clang::TemplateArgumentListInfo*, llvm::ArrayRef<clang::Expr*>,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool,
llvm::function_ref<bool (llvm::ArrayRef<clang::QualType>)>) + 2323
68 clang++ 0x000000010f53a741
clang::Sema::AddMethodTemplateCandidate(clang::FunctionTemplateDecl*,
clang::DeclAccessPair, clang::CXXRecordDecl*, clang::TemplateArgumentListInfo*,
clang::QualType, clang::Expr::Classification, llvm::ArrayRef<clang::Expr*>,
clang::OverloadCandidateSet&, bool, bool, clang::OverloadCandidateParamOrder) +
577
69 clang++ 0x000000010f556c2c
clang::Sema::BuildCallToMemberFunction(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>,
clang::SourceLocation) + 3532
70 clang++ 0x000000010f289fcb
clang::Sema::BuildCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool)
+ 2027
71 clang++ 0x000000010f6cfa74 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 228
72 clang++ 0x000000010f6b77bd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 1869
73 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
74 clang++ 0x000000010f6bc5af
clang::Sema::SubstType(clang::QualType, clang::MultiLevelTemplateArgumentList
const&, clang::SourceLocation, clang::DeclarationName) + 143
75 clang++ 0x000000010f5ca1c9
clang::Sema::CheckTemplateIdType(clang::TemplateName, clang::SourceLocation,
clang::TemplateArgumentListInfo&) + 4137
76 clang++ 0x000000010f6d9154 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName) + 2500
77 clang++ 0x000000010f6b8d4c clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 7388
78 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
79 clang++ 0x000000010f6d9c81 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&, bool) + 97
80 clang++ 0x000000010f6d89e1 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName) + 593
81 clang++ 0x000000010f6b8d4c clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 7388
82 clang++ 0x000000010f6b8e22 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 7602
83 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
84 clang++ 0x000000010f6d9c81 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArgument(clang::TemplateArgumentLoc
const&, clang::TemplateArgumentLoc&, bool) + 97
85 clang++ 0x000000010f6c4da1 bool
clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateArguments<clang::TemplateArgumentLoc
const*>(clang::TemplateArgumentLoc const*, clang::TemplateArgumentLoc const*,
clang::TemplateArgumentListInfo&, bool) + 481
86 clang++ 0x000000010f6be755
clang::Sema::Subst(clang::TemplateArgumentLoc const*, unsigned int,
clang::TemplateArgumentListInfo&, clang::MultiLevelTemplateArgumentList const&)
+ 85
87 clang++ 0x000000010f65e040
std::__1::enable_if<IsPartialSpecialization<clang::VarTemplatePartialSpecializationDecl>::value,
clang::Sema::TemplateDeductionResult>::type
FinishTemplateArgumentDeduction<clang::VarTemplatePartialSpecializationDecl>(clang::Sema&,
clang::VarTemplatePartialSpecializationDecl*, bool, clang::TemplateArgumentList
const&, llvm::SmallVectorImpl<clang::DeducedTemplateArgument>&,
clang::sema::TemplateDeductionInfo&) + 1648
88 clang++ 0x000000010f65d920
clang::Sema::DeduceTemplateArguments(clang::VarTemplatePartialSpecializationDecl*,
clang::TemplateArgumentList const&, clang::sema::TemplateDeductionInfo&) + 1008
89 clang++ 0x000000010f5d2bf3
clang::Sema::CheckVarTemplateId(clang::VarTemplateDecl*, clang::SourceLocation,
clang::SourceLocation, clang::TemplateArgumentListInfo const&) + 755
90 clang++ 0x000000010f5d3b0a
clang::Sema::CheckVarTemplateId(clang::CXXScopeSpec const&,
clang::DeclarationNameInfo const&, clang::VarTemplateDecl*,
clang::SourceLocation, clang::TemplateArgumentListInfo const*) + 42
91 clang++ 0x000000010f5d42ca
clang::Sema::BuildTemplateIdExpr(clang::CXXScopeSpec const&,
clang::SourceLocation, clang::LookupResult&, bool,
clang::TemplateArgumentListInfo const*) + 314
92 clang++ 0x000000010f6d556b clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformUnresolvedLookupExpr(clang::UnresolvedLookupExpr*)
+ 1227
93 clang++ 0x000000010f6cba6e clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformBinaryOperator(clang::BinaryOperator*)
+ 110
94 clang++ 0x000000010f6e9666 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCondition(clang::SourceLocation,
clang::VarDecl*, clang::Expr*, clang::Sema::ConditionKind) + 150
95 clang++ 0x000000010f6e6354 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformIfStmt(clang::IfStmt*) + 148
96 clang++ 0x000000010f6e64e2 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformIfStmt(clang::IfStmt*) + 546
97 clang++ 0x000000010f6e09a6 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCompoundStmt(clang::CompoundStmt*,
bool) + 534
98 clang++ 0x000000010f6c3d0f
clang::Sema::SubstStmt(clang::Stmt*, clang::MultiLevelTemplateArgumentList
const&) + 79
99 clang++ 0x000000010f7083c2
clang::Sema::InstantiateFunctionDefinition(clang::SourceLocation,
clang::FunctionDecl*, bool, bool, bool) + 3842
100 clang++ 0x000000010efbf07e
clang::Sema::runWithSufficientStackSpace(clang::SourceLocation,
llvm::function_ref<void ()>) + 46
101 clang++ 0x000000010f666558
clang::Sema::DeduceReturnType(clang::FunctionDecl*, clang::SourceLocation,
bool) + 760
102 clang++ 0x000000010f2836d7
clang::Sema::DiagnoseUseOfDecl(clang::NamedDecl*,
llvm::ArrayRef<clang::SourceLocation>, clang::ObjCInterfaceDecl const*, bool,
bool, clang::ObjCInterfaceDecl*) + 5223
103 clang++ 0x000000010f54fac2
FinishOverloadedCallExpr(clang::Sema&, clang::Scope*, clang::Expr*,
clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*,
clang::OverloadCandidateSet*, clang::OverloadCandidate**,
clang::OverloadingResult, bool) + 162
104 clang++ 0x000000010f54f9d4
clang::Sema::BuildOverloadedCallExpr(clang::Scope*, clang::Expr*,
clang::UnresolvedLookupExpr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool,
bool) + 596
105 clang++ 0x000000010f289ea6
clang::Sema::BuildCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool)
+ 1734
106 clang++ 0x000000010f6cfa74 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 228
107 clang++ 0x000000010f6b77bd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 1869
108 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
109 clang++ 0x000000010f6bc5af
clang::Sema::SubstType(clang::QualType, clang::MultiLevelTemplateArgumentList
const&, clang::SourceLocation, clang::DeclarationName) + 143
110 clang++ 0x000000010f5ca1c9
clang::Sema::CheckTemplateIdType(clang::TemplateName, clang::SourceLocation,
clang::TemplateArgumentListInfo&) + 4137
111 clang++ 0x000000010f6d9154 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName) + 2500
112 clang++ 0x000000010f6b8d4c clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 7388
113 clang++ 0x000000010f6b6d67 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeSourceInfo*) + 199
114 clang++ 0x000000010f6cf620 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCXXUnresolvedConstructExpr(clang::CXXUnresolvedConstructExpr*)
+ 32
115 clang++ 0x000000010f6cf9cd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 61
116 clang++ 0x000000010f6b77bd clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType(clang::TypeLocBuilder&,
clang::TypeLoc) + 1869
117 clang++ 0x000000010f6bcd10
clang::Sema::SubstFunctionDeclType(clang::TypeSourceInfo*,
clang::MultiLevelTemplateArgumentList const&, clang::SourceLocation,
clang::DeclarationName, clang::CXXRecordDecl*, clang::Qualifiers) + 1824
118 clang++ 0x000000010f6ff8ab
clang::TemplateDeclInstantiator::SubstFunctionType(clang::FunctionDecl*,
llvm::SmallVectorImpl<clang::ParmVarDecl*>&) + 251
119 clang++ 0x000000010f6fc5ef
clang::TemplateDeclInstantiator::VisitCXXMethodDecl(clang::CXXMethodDecl*,
clang::TemplateParameterList*,
llvm::Optional<clang::ASTTemplateArgumentListInfo const*>,
clang::TemplateDeclInstantiator::RewriteKind) + 799
120 clang++ 0x000000010f70c3d9 void llvm::function_ref<void
()>::callback_fn<clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)::$_0>(long) + 25
121 clang++ 0x000000010efbf07e
clang::Sema::runWithSufficientStackSpace(clang::SourceLocation,
llvm::function_ref<void ()>) + 46
122 clang++ 0x000000010f706099
clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&) + 201
123 clang++ 0x000000010f6601f5
clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*,
llvm::SmallVectorImpl<clang::DeducedTemplateArgument>&, unsigned int,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl<clang::Sema::OriginalCallArg> const*, bool,
llvm::function_ref<bool ()>) + 2453
124 clang++ 0x000000010f661d93
clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*,
clang::TemplateArgumentListInfo*, llvm::ArrayRef<clang::Expr*>,
clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool,
llvm::function_ref<bool (llvm::ArrayRef<clang::QualType>)>) + 2323
125 clang++ 0x000000010f53a741
clang::Sema::AddMethodTemplateCandidate(clang::FunctionTemplateDecl*,
clang::DeclAccessPair, clang::CXXRecordDecl*, clang::TemplateArgumentListInfo*,
clang::QualType, clang::Expr::Classification, llvm::ArrayRef<clang::Expr*>,
clang::OverloadCandidateSet&, bool, bool, clang::OverloadCandidateParamOrder) +
577
126 clang++ 0x000000010f53af0a
clang::Sema::AddMethodCandidate(clang::DeclAccessPair, clang::QualType,
clang::Expr::Classification, llvm::ArrayRef<clang::Expr*>,
clang::OverloadCandidateSet&, bool, clang::OverloadCandidateParamOrder) + 234
127 clang++ 0x000000010f558801
clang::Sema::BuildCallToObjectOfClassType(clang::Scope*, clang::Expr*,
clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>,
clang::SourceLocation) + 1169
128 clang++ 0x000000010f289fa7
clang::Sema::BuildCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation,
llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool)
+ 1991
129 clang++ 0x000000010f6cfa74 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCallExpr(clang::CallExpr*) + 228
130 clang++ 0x000000010f6c232a
clang::Sema::SubstInitializer(clang::Expr*,
clang::MultiLevelTemplateArgumentList const&, bool) + 74
131 clang++ 0x000000010f704515
clang::Sema::InstantiateVariableInitializer(clang::VarDecl*, clang::VarDecl*,
clang::MultiLevelTemplateArgumentList const&) + 341
132 clang++ 0x000000010f6f811a
clang::Sema::BuildVariableInstantiation(clang::VarDecl*, clang::VarDecl*,
clang::MultiLevelTemplateArgumentList const&,
llvm::SmallVector<clang::Sema::LateInstantiatedAttribute, 16u>*,
clang::DeclContext*, clang::LocalInstantiationScope*, bool,
clang::VarTemplateSpecializationDecl*) + 1818
133 clang++ 0x000000010f6f7879
clang::TemplateDeclInstantiator::VisitVarDecl(clang::VarDecl*, bool,
llvm::ArrayRef<clang::BindingDecl*>*) + 793
134 clang++ 0x000000010f70c3d9 void llvm::function_ref<void
()>::callback_fn<clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&)::$_0>(long) + 25
135 clang++ 0x000000010efbf07e
clang::Sema::runWithSufficientStackSpace(clang::SourceLocation,
llvm::function_ref<void ()>) + 46
136 clang++ 0x000000010f706099
clang::Sema::SubstDecl(clang::Decl*, clang::DeclContext*,
clang::MultiLevelTemplateArgumentList const&) + 201
137 clang++ 0x000000010f6e5dba clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformDeclStmt(clang::DeclStmt*) + 122
138 clang++ 0x000000010f6e09a6 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCompoundStmt(clang::CompoundStmt*,
bool) + 534
139 clang++ 0x000000010f6e64e2 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformIfStmt(clang::IfStmt*) + 546
140 clang++ 0x000000010f6e09a6 clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformCompoundStmt(clang::CompoundStmt*,
bool) + 534
141 clang++ 0x000000010f6c3d0f
clang::Sema::SubstStmt(clang::Stmt*, clang::MultiLevelTemplateArgumentList
const&) + 79
142 clang++ 0x000000010f7083c2
clang::Sema::InstantiateFunctionDefinition(clang::SourceLocation,
clang::FunctionDecl*, bool, bool, bool) + 3842
143 clang++ 0x000000010f70ae31
clang::Sema::PerformPendingInstantiations(bool) + 609
144 clang++ 0x000000010efc0ca5
clang::Sema::ActOnEndOfTranslationUnitFragment(clang::Sema::TUFragmentKind) +
389
145 clang++ 0x000000010efc1c16
clang::Sema::ActOnEndOfTranslationUnit() + 246
146 clang++ 0x000000010ef280b7
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, bool)
+ 1799
147 clang++ 0x000000010ee6c1f7 clang::ParseAST(clang::Sema&,
bool, bool) + 535
148 clang++ 0x000000010e0d8eb3
clang::FrontendAction::Execute() + 163
149 clang++ 0x000000010e066345
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 1749
150 clang++ 0x000000010e14fe76
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1830
151 clang++ 0x000000010b9996ed cc1_main(llvm::ArrayRef<char
const*>, char const*, void*) + 2477
152 clang++ 0x000000010b997339
ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) + 345
153 clang++ 0x000000010deebd57 void llvm::function_ref<void
()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef>
>, std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >*, bool*) const::$_1>(long) + 23
154 clang++ 0x000000010d7f1a64
llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) + 228
155 clang++ 0x000000010deeb0f7
clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef>
>, std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >*, bool*) const + 375
156 clang++ 0x000000010deb9b7f
clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&,
clang::driver::Command const*&) const + 399
157 clang++ 0x000000010deb9fbc
clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&,
llvm::SmallVectorImpl<std::__1::pair<int, clang::driver::Command const*> >&)
const + 124
158 clang++ 0x000000010ded2f5c
clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&,
llvm::SmallVectorImpl<std::__1::pair<int, clang::driver::Command const*> >&) +
396
159 clang++ 0x000000010b9969ff main + 10559
160 libdyld.dylib 0x00007fff684f52e5 start + 1
161 libdyld.dylib 0x000000000000000b start + 18446603338766134567
clang-11: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 11.0.0 (git at github.com:llvm/llvm-project.git
ed77efeff18c0c894c51d246a2e81b565ec71af9)
Target: x86_64-apple-darwin19.0.0
Thread model: posix
InstalledDir: /Users/eniebler/llvm-install/bin
clang-11: note: diagnostic msg: PLEASE submit a bug report to
https://bugs.llvm.org/ and include the crash backtrace, preprocessed source,
and associated run script.
--
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/20200410/28170468/attachment-0001.html>
More information about the llvm-bugs
mailing list