=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>,
=?utf-8?q?Félix?= Cloutier <fclout...@apple.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/116...@github.com>

thurstond wrote:

Benjamin Kramer fixed it at head 
(https://github.com/llvm/llvm-project/commit/85eb7259d9e1ab57e9fac248096d73505a60c072)

> The newly added format-string-matches.c has been failing in the sanitizer 
> builds 
> (https://lab.llvm.org/buildbot/#/builders/52/builds/6312/steps/12/logs/stdio).
>  Could you please take a look?
> 
> ```
> ==clang==2272405==ERROR: AddressSanitizer: stack-use-after-scope on address 
> 0x72d4dddb2570 at pc 0x57fb61e308a1 bp 0x7fff837cb2b0 sp 0x7fff837cb2a8
> READ of size 8 at 0x72d4dddb2570 thread T0
>     #0 0x57fb61e308a0 in EmitFormatDiagnostic<clang::CharSourceRange> 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:6925:43
>     #1 0x57fb61e308a0 in (anonymous 
> namespace)::CheckFormatHandler::HandleInvalidConversionSpecifier(unsigned 
> int, clang::SourceLocation, char const*, unsigned int, char const*, unsigned 
> int) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:6880:3
>     #2 0x57fb61e2cf26 in (anonymous 
> namespace)::CheckPrintfHandler::HandleInvalidPrintfConversionSpecifier(clang::analyze_printf::PrintfSpecifier
>  const&, char const*, unsigned int) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:7152:10
>     #3 0x57fb61e2d899 in (anonymous 
> namespace)::CheckPrintfHandler::HandlePrintfSpecifier(clang::analyze_printf::PrintfSpecifier
>  const&, char const*, unsigned int, clang::TargetInfo const&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp
>     #4 0x57fb61e40876 in (anonymous 
> namespace)::DecomposePrintfHandler::HandlePrintfSpecifier(clang::analyze_printf::PrintfSpecifier
>  const&, char const*, unsigned int, clang::TargetInfo const&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:7416:28
>     #5 0x57fb6496f402 in 
> clang::analyze_format_string::ParsePrintfString(clang::analyze_format_string::FormatStringHandler&,
>  char const*, char const*, clang::LangOptions const&, clang::TargetInfo 
> const&, bool) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/AST/PrintfFormatString.cpp:449:12
>     #6 0x57fb61df40d7 in (anonymous 
> namespace)::DecomposePrintfHandler::GetSpecifiers(clang::Sema&, (anonymous 
> namespace)::FormatStringLiteral const*, clang::Expr const*, 
> clang::Sema::FormatStringType, bool, bool, llvm::SmallVectorImpl<(anonymous 
> namespace)::EquatableFormatArgument>&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:7398:8
>     #7 0x57fb61df3322 in 
> clang::Sema::CheckFormatStringsCompatible(clang::Sema::FormatStringType, 
> clang::StringLiteral const*, clang::StringLiteral const*, clang::Expr const*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:8660:7
>     #8 0x57fb61e274b2 in CheckFormatString(clang::Sema&, (anonymous 
> namespace)::FormatStringLiteral const*, clang::StringLiteral const*, 
> clang::Expr const*, llvm::ArrayRef<clang::Expr const*>, 
> clang::Sema::FormatArgumentPassingKind, unsigned int, unsigned int, 
> clang::Sema::FormatStringType, bool, clang::Sema::VariadicCallType, 
> llvm::SmallBitVector&, (anonymous namespace)::UncoveredArgHandler&, bool) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:8620:9
>     #9 0x57fb61df0052 in checkFormatStringExpr(clang::Sema&, 
> clang::StringLiteral const*, clang::Expr const*, llvm::ArrayRef<clang::Expr 
> const*>, clang::Sema::FormatArgumentPassingKind, unsigned int, unsigned int, 
> clang::Sema::FormatStringType, clang::Sema::VariadicCallType, bool, 
> llvm::SmallBitVector&, (anonymous namespace)::UncoveredArgHandler&, 
> llvm::APSInt, bool) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:6270:7
>     #10 0x57fb61deba4b in 
> clang::Sema::CheckFormatArguments(llvm::ArrayRef<clang::Expr const*>, 
> clang::Sema::FormatArgumentPassingKind, clang::StringLiteral const*, unsigned 
> int, unsigned int, clang::Sema::FormatStringType, 
> clang::Sema::VariadicCallType, clang::SourceLocation, clang::SourceRange, 
> llvm::SmallBitVector&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:6455:31
>     #11 0x57fb61dd4429 in CheckFormatString 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:6418:12
>     #12 0x57fb61dd4429 in clang::Sema::checkCall(clang::NamedDecl*, 
> clang::FunctionProtoType const*, clang::Expr const*, 
> llvm::ArrayRef<clang::Expr const*>, bool, clang::SourceLocation, 
> clang::SourceRange, clang::Sema::VariadicCallType) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:3307:7
>     #13 0x57fb61dda4cb in 
> clang::Sema::CheckFunctionCall(clang::FunctionDecl*, clang::CallExpr*, 
> clang::FunctionProtoType const*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:3546:3
>     #14 0x57fb6234c9b6 in clang::Sema::BuildResolvedCallExpr(clang::Expr*, 
> clang::NamedDecl*, clang::SourceLocation, llvm::ArrayRef<clang::Expr*>, 
> clang::SourceLocation, clang::Expr*, bool, clang::CallExpr::ADLCallKind) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaExpr.cpp:7036:9
>     #15 0x57fb62310d1d in clang::Sema::BuildCallExpr(clang::Scope*, 
> clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>, 
> clang::SourceLocation, clang::Expr*, bool, bool) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaExpr.cpp:6693:10
>     #16 0x57fb623474fe in clang::Sema::ActOnCallExpr(clang::Scope*, 
> clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>, 
> clang::SourceLocation, clang::Expr*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaExpr.cpp:6456:7
>     #17 0x57fb6194c787 in 
> clang::Parser::ParsePostfixExpressionSuffix(clang::ActionResult<clang::Expr*, 
> true>) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseExpr.cpp:2269:23
>     #18 0x57fb61953272 in 
> clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, bool&, 
> clang::Parser::TypeCastState, bool, bool*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseExpr.cpp:1962:9
>     #19 0x57fb61945e62 in ParseCastExpression 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseExpr.cpp:729:20
>     #20 0x57fb61945e62 in 
> clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseExpr.cpp:184:20
>     #21 0x57fb61945acd in 
> clang::Parser::ParseExpression(clang::Parser::TypeCastState) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseExpr.cpp:135:18
>     #22 0x57fb61ac41fd in 
> clang::Parser::ParseExprStatement(clang::Parser::ParsedStmtContext) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseStmt.cpp:564:19
>     #23 0x57fb61abcdfa in 
> clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*,
>  32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, 
> clang::ParsedAttributes&, clang::ParsedAttributes&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseStmt.cpp:293:14
>     #24 0x57fb61abb924 in 
> clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 
> 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseStmt.cpp:125:20
>     #25 0x57fb61ad775b in clang::Parser::ParseCompoundStatementBody(bool) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseStmt.cpp:1267:11
>     #26 0x57fb61adae8e in 
> clang::Parser::ParseFunctionStatementBody(clang::Decl*, 
> clang::Parser::ParseScope&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseStmt.cpp:2577:21
>     #27 0x57fb618f7866 in 
> clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, 
> clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1520:10
>     #28 0x57fb61a18176 in 
> clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, 
> clang::DeclaratorContext, clang::ParsedAttributes&, 
> clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, 
> clang::Parser::ForRangeInit*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseDecl.cpp:2461:17
>     #29 0x57fb618f4a13 in 
> clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, 
> clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1244:10
>     #30 0x57fb618f3529 in 
> clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, 
> clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1266:12
>     #31 0x57fb618f0528 in 
> clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, 
> clang::ParsedAttributes&, clang::ParsingDeclSpec*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1069:14
>     #32 0x57fb618eb6ab in 
> clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, 
> clang::Sema::ModuleImportState&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:758:12
>     #33 0x57fb618dd76d in clang::ParseAST(clang::Sema&, bool, bool) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseAST.cpp:171:20
>     #34 0x57fb5e5f68d8 in clang::FrontendAction::Execute() 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1072:3
>     #35 0x57fb5e4f8d0f in 
> clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1056:33
>     #36 0x57fb5e8488a5 in 
> clang::ExecuteCompilerInvocation(clang::CompilerInstance*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:280:25
>     #37 0x57fb556a7754 in cc1_main(llvm::ArrayRef<char const*>, char const*, 
> void*) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/cc1_main.cpp:290:15
>     #38 0x57fb5569f1bf in ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, 
> llvm::ToolContext const&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/driver.cpp:218:12
>     #39 0x57fb5569d657 in clang_main(int, char**, llvm::ToolContext const&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/driver.cpp:259:12
>     #40 0x57fb556bf501 in main 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm_build_asan/tools/clang/tools/driver/clang-driver.cpp:17:10
>     #41 0x76d4dfc2a3b7  (/lib/x86_64-linux-gnu/libc.so.6+0x2a3b7) (BuildId: 
> 91f01b4ad171c80b6303d08d1f08cba8b990413d)
>     #42 0x76d4dfc2a47a in __libc_start_main 
> (/lib/x86_64-linux-gnu/libc.so.6+0x2a47a) (BuildId: 
> 91f01b4ad171c80b6303d08d1f08cba8b990413d)
>     #43 0x57fb555b3ae4 in _start 
> (/home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm_build_asan/bin/clang-21+0xc1caae4)
> Address 0x72d4dddb2570 is located in stack of thread T0 at offset 368 in frame
>     #0 0x57fb61df3d5f in (anonymous 
> namespace)::DecomposePrintfHandler::GetSpecifiers(clang::Sema&, (anonymous 
> namespace)::FormatStringLiteral const*, clang::Expr const*, 
> clang::Sema::FormatStringType, bool, bool, llvm::SmallVectorImpl<(anonymous 
> namespace)::EquatableFormatArgument>&) 
> /home/b/sanitizer-x86_64-linux-bootstrap-asan/build/llvm-project/clang/lib/Sema/SemaChecking.cpp:7388
> ```



https://github.com/llvm/llvm-project/pull/116708
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to