[clang] [llvm] Dump auto (c++11) type Inferences (Issue #17) (PR #144478)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Jun 17 08:06:05 PDT 2025
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff HEAD~1 HEAD --extensions h,cpp -- clang/test/Sema/fdump_auto-type-inference.cpp clang/include/clang/Basic/LangOptions.h clang/include/clang/Sema/Sema.h clang/lib/Sema/Sema.cpp clang/lib/Sema/SemaDecl.cpp clang/lib/Sema/SemaStmt.cpp
``````````
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/clang/include/clang/Basic/LangOptions.h b/clang/include/clang/Basic/LangOptions.h
index f80ccb7ee..aee773d09 100644
--- a/clang/include/clang/Basic/LangOptions.h
+++ b/clang/include/clang/Basic/LangOptions.h
@@ -510,7 +510,7 @@ public:
SanitizerSet Sanitize;
/// Is at least one coverage instrumentation type enabled.
bool SanitizeCoverage = false;
-
+
bool DumpAutoTypeInference = false;
/// Paths to files specifying which objects
/// (files, functions, variables) should not be instrumented.
diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h
index c955766cf..781f0a509 100644
--- a/clang/include/clang/Sema/Sema.h
+++ b/clang/include/clang/Sema/Sema.h
@@ -89,10 +89,10 @@
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/TinyPtrVector.h"
#include "llvm/Support/Allocator.h"
+#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/ErrorHandling.h"
-#include "llvm/Support/CommandLine.h"
#include <cassert>
#include <climits>
#include <cstddef>
@@ -108,15 +108,12 @@
#include <utility>
#include <vector>
-
-
namespace opts {
// Option for dumping auto type inference
extern llvm::cl::OptionCategory DumpAutoInference;
extern llvm::cl::opt<bool> DumpAutoTypeInference;
} // namespace opts
-
namespace llvm {
struct InlineAsmIdentifierInfo;
} // namespace llvm
@@ -933,14 +930,12 @@ public:
/// Print out statistics about the semantic analysis.
void PrintStats() const;
- /// Emits diagnostic remark indicating the compiler-deduced types and return
+ /// Emits diagnostic remark indicating the compiler-deduced types and return
/// type for variables and functions
void DumpAutoTypeInference(SourceManager &SM, SourceLocation Loc, bool isVar,
ASTContext &Context, llvm::StringRef Name,
QualType DeducedType);
-
-
/// Run some code with "sufficient" stack space. (Currently, at least 256K is
/// guaranteed). Produces a warning if we're low on stack space and allocates
/// more in that case. Use this in code that may recurse deeply (for example,
diff --git a/clang/lib/Sema/Sema.cpp b/clang/lib/Sema/Sema.cpp
index 707d7c0d5..e735b2529 100644
--- a/clang/lib/Sema/Sema.cpp
+++ b/clang/lib/Sema/Sema.cpp
@@ -84,8 +84,9 @@ namespace opts {
llvm::cl::OptionCategory DumpAutoInference("DumpAutoInference");
llvm::cl::opt<bool> DumpAutoTypeInference{
"fdump-auto-type-inference",
- llvm::cl::desc("Dump compiler-deduced type for variables and return expressions declared using C++ 'auto' keyword"), llvm::cl::ZeroOrMore,
- llvm::cl::cat(DumpAutoInference)};
+ llvm::cl::desc("Dump compiler-deduced type for variables and return "
+ "expressions declared using C++ 'auto' keyword"),
+ llvm::cl::ZeroOrMore, llvm::cl::cat(DumpAutoInference)};
} // namespace opts
SourceLocation Sema::getLocForEndOfToken(SourceLocation Loc, unsigned Offset) {
@@ -651,8 +652,6 @@ void Sema::DumpAutoTypeInference(SourceManager &SM, SourceLocation Loc,
}
}
-
-
void Sema::runWithSufficientStackSpace(SourceLocation Loc,
llvm::function_ref<void()> Fn) {
StackHandler.runWithSufficientStackSpace(Loc, Fn);
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index de3a662d6..643135b10 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -13159,7 +13159,7 @@ bool Sema::DeduceVariableDeclarationType(VarDecl *VDecl, bool DirectInit,
VDecl->setType(DeducedType);
assert(VDecl->isLinkageValid());
-
+
// Emit a remark indicating the compiler-deduced type for variables declared
// using the C++ 'auto' keyword
SourceManager &SM = getSourceManager();
diff --git a/clang/lib/Sema/SemaStmt.cpp b/clang/lib/Sema/SemaStmt.cpp
index a5406d279..796e81a58 100644
--- a/clang/lib/Sema/SemaStmt.cpp
+++ b/clang/lib/Sema/SemaStmt.cpp
@@ -3834,7 +3834,7 @@ bool Sema::DeduceFunctionTypeFromReturnExpr(FunctionDecl *FD,
// Update all declarations of the function to have the deduced return type.
Context.adjustDeducedFunctionResultType(FD, Deduced);
- // Emit a remark indicating the compiler-deduced return type for functions
+ // Emit a remark indicating the compiler-deduced return type for functions
// declared using the C++ 'auto' keyword
SourceManager &SM = getSourceManager();
Sema::DumpAutoTypeInference(SM, FD->getLocation(), false, Context,
``````````
</details>
https://github.com/llvm/llvm-project/pull/144478
More information about the cfe-commits
mailing list