vsk added a comment.
The original sanitizer report /does/ show UB in the NonTypeTemplateParmDecl
static constructor:
* thread #1, queue = 'com.apple.main-thread', stop reason = Null pointer use
* frame #0: 0x000000013ea61cb0
libclang_rt.asan_osx_dynamic.dylib`__ubsan_on_report
frame #1: 0x000000013ea5c76b
libclang_rt.asan_osx_dynamic.dylib`__ubsan::Diag::~Diag() + 219
frame #2: 0x000000013ea5ded3
libclang_rt.asan_osx_dynamic.dylib`handleTypeMismatchImpl(__ubsan::TypeMismatchData*,
unsigned long, __ubsan::ReportOptions) + 1155
frame #3: 0x000000013ea5e00c
libclang_rt.asan_osx_dynamic.dylib`__ubsan_handle_type_mismatch_v1_abort + 60
frame #4: 0x000000011b383f5a
liblldb.11.0.0git.dylib`clang::NonTypeTemplateParmDecl::Create(C=0x00006290000c3200,
DC=0x0000621008793930, StartLoc=(ID = 0), IdLo
c=(ID = 0), D=0, P=1, Id=0x0000621008cfb668, T=QualType @ 0x00007ffeefbec980,
ParameterPack=false, TInfo=0x0000000000000000) at DeclTemplate.cpp:692:25
frame #5: 0x00000001025a1d51
liblldb.11.0.0git.dylib`CreateTemplateParameterList(ast=0x00006290000c3200,
template_param_infos=0x00007ffeefbedf50, template_param
_decls=0x00007ffeefbed500) at ClangASTContext.cpp:1272:38
frame #6: 0x00000001025a4fcc
liblldb.11.0.0git.dylib`lldb_private::ClangASTContext::CreateClassTemplateDecl(this=0x0000612000054c58,
decl_ctx=0x00006210087942d0
, access_type=eAccessNone, class_name="BumpPtrAllocatorImpl", kind=3,
template_param_infos=0x00007ffeefbedf50) at ClangASTContext.cpp:1373:48
frame #7: 0x0000000102641e03
liblldb.11.0.0git.dylib`lldb_private::ClangASTContext::ParseClassTemplateDecl(this=0x0000612000054c58,
decl_ctx=0x00006210087942d0,
access_type=eAccessNone,
parent_name="BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096, 4096>",
tag_decl_kind=3, template_param_infos=0x00007ffeefbedf50) at ClangA
STContext.cpp:8792:12
frame #8: 0x0000000104bb96e2
liblldb.11.0.0git.dylib`DWARFASTParserClang::ParseStructureLikeDIE(this=0x000060d00005bad0,
sc=0x00007ffeefbefe80, die=0x00007ffeef
bf0520, attrs=0x00007ffeefbef180) at DWARFASTParserClang.cpp:1617:19
frame #9: 0x0000000104baf779
liblldb.11.0.0git.dylib`DWARFASTParserClang::ParseTypeFromDWARF(this=0x000060d00005bad0,
sc=0x00007ffeefbefe80, die=0x00007ffeefbf0
520, type_is_new_ptr=0x0000000000000000) at DWARFASTParserClang.cpp:491:15
frame #10: 0x0000000104d3f396
liblldb.11.0.0git.dylib`SymbolFileDWARF::ParseType(this=0x000061b000089680,
sc=0x00007ffeefbefe80, die=0x00007ffeefbf0520, type_is
_new_ptr=0x0000000000000000) at SymbolFileDWARF.cpp:3058:31
frame #11: 0x0000000104d2049e
liblldb.11.0.0git.dylib`SymbolFileDWARF::GetTypeForDIE(this=0x000061b000089680,
die=0x00007ffeefbf0520, resolve_function_context=f
alse) at SymbolFileDWARF.cpp:2649:17
frame #12: 0x0000000104d1bc1f
liblldb.11.0.0git.dylib`SymbolFileDWARF::ResolveType(this=0x000061b000089680,
die=0x00007ffeefbf0520, assert_not_being_parsed=true
, resolve_function_context=false) at SymbolFileDWARF.cpp:1456:18
frame #13: 0x0000000104d1b42e
liblldb.11.0.0git.dylib`SymbolFileDWARF::ResolveTypeUID(this=0x000061b000089680,
type_uid=4295014635) at SymbolFileDWARF.cpp:1324:
21
Maybe it moved here?
AutoType *AT = TInfo->getType()->getContainedAutoType();
Or maybe `Revert "[Concepts] Placeholder constraints and abbreviated
templates"` on 1/23 hides the bug?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D73808/new/
https://reviews.llvm.org/D73808
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits