Skip to content

[NFC][Clang] Add setExprs overload to reduce some code duplication #139749

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 14, 2025

Conversation

jurahul
Copy link
Contributor

@jurahul jurahul commented May 13, 2025

Add a setExprs overload to OpenACCClauseWithExprs that allows initializing the trailing storage to help eliminate some code duplication in various subclass constructors.

@jurahul jurahul marked this pull request as ready for review May 13, 2025 16:59
@jurahul jurahul requested a review from erichkeane May 13, 2025 16:59
@llvmbot llvmbot added clang Clang issues not falling into any other category clang:frontend Language frontend issues, e.g. anything involving "Sema" labels May 13, 2025
@llvmbot
Copy link
Member

llvmbot commented May 13, 2025

@llvm/pr-subscribers-clang

Author: Rahul Joshi (jurahul)

Changes

Add a setExprs overload to OpenACCClauseWithExprs that allows initializing the trailing storage to help eliminate some code duplication in various subclass constructors.


Full diff: https://github.com/llvm/llvm-project/pull/139749.diff

2 Files Affected:

  • (modified) clang/include/clang/AST/OpenACCClause.h (+28-40)
  • (modified) clang/lib/AST/OpenACCClause.cpp (+1-2)
diff --git a/clang/include/clang/AST/OpenACCClause.h b/clang/include/clang/AST/OpenACCClause.h
index fd101336acd9d..d0571e7148c3d 100644
--- a/clang/include/clang/AST/OpenACCClause.h
+++ b/clang/include/clang/AST/OpenACCClause.h
@@ -506,6 +506,14 @@ class OpenACCClauseWithExprs : public OpenACCClauseWithParams {
     Exprs = NewExprs;
   }
 
+  /// Used only for initialization, the leaf class can initialize this to
+  /// trailing storage, and initialize the data in the trailing storage as well.
+  void setExprs(MutableArrayRef<Expr *> NewExprs, ArrayRef<Expr *> Values) {
+    assert(NewExprs.size() == Values.size());
+    llvm::uninitialized_copy(Values, NewExprs.begin());
+    setExprs(NewExprs);
+  }
+
   /// Gets the entire list of expressions, but leave it to the
   /// individual clauses to expose this how they'd like.
   llvm::ArrayRef<Expr *> getExprs() const { return Exprs; }
@@ -578,8 +586,7 @@ class OpenACCNumGangsClause final
                         ArrayRef<Expr *> IntExprs, SourceLocation EndLoc)
       : OpenACCClauseWithExprs(OpenACCClauseKind::NumGangs, BeginLoc, LParenLoc,
                                EndLoc) {
-    llvm::uninitialized_copy(IntExprs, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(IntExprs.size()));
+    setExprs(getTrailingObjects<Expr *>(IntExprs.size()), IntExprs);
   }
 
 public:
@@ -607,8 +614,7 @@ class OpenACCTileClause final
                     ArrayRef<Expr *> SizeExprs, SourceLocation EndLoc)
       : OpenACCClauseWithExprs(OpenACCClauseKind::Tile, BeginLoc, LParenLoc,
                                EndLoc) {
-    llvm::uninitialized_copy(SizeExprs, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(SizeExprs.size()));
+    setExprs(getTrailingObjects<Expr *>(SizeExprs.size()), SizeExprs);
   }
 
 public:
@@ -845,8 +851,7 @@ class OpenACCPrivateClause final
                        ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Private, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -867,8 +872,7 @@ class OpenACCFirstPrivateClause final
                             ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::FirstPrivate, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -889,8 +893,7 @@ class OpenACCDevicePtrClause final
                          ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::DevicePtr, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -911,8 +914,7 @@ class OpenACCAttachClause final
                       ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Attach, BeginLoc, LParenLoc,
                                  EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -933,8 +935,7 @@ class OpenACCDetachClause final
                       ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Detach, BeginLoc, LParenLoc,
                                  EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -955,8 +956,7 @@ class OpenACCDeleteClause final
                       ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Delete, BeginLoc, LParenLoc,
                                  EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -977,8 +977,7 @@ class OpenACCUseDeviceClause final
                          ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::UseDevice, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -999,8 +998,7 @@ class OpenACCNoCreateClause final
                         ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::NoCreate, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1021,8 +1019,7 @@ class OpenACCPresentClause final
                        ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Present, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1042,8 +1039,7 @@ class OpenACCHostClause final
                     ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Host, BeginLoc, LParenLoc,
                                  EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1065,8 +1061,7 @@ class OpenACCDeviceClause final
                       ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Device, BeginLoc, LParenLoc,
                                  EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1093,8 +1088,7 @@ class OpenACCCopyClause final
             Spelling == OpenACCClauseKind::PCopy ||
             Spelling == OpenACCClauseKind::PresentOrCopy) &&
            "Invalid clause kind for copy-clause");
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1127,8 +1121,7 @@ class OpenACCCopyInClause final
             Spelling == OpenACCClauseKind::PCopyIn ||
             Spelling == OpenACCClauseKind::PresentOrCopyIn) &&
            "Invalid clause kind for copyin-clause");
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1160,8 +1153,7 @@ class OpenACCCopyOutClause final
             Spelling == OpenACCClauseKind::PCopyOut ||
             Spelling == OpenACCClauseKind::PresentOrCopyOut) &&
            "Invalid clause kind for copyout-clause");
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1193,8 +1185,7 @@ class OpenACCCreateClause final
             Spelling == OpenACCClauseKind::PCreate ||
             Spelling == OpenACCClauseKind::PresentOrCreate) &&
            "Invalid clause kind for create-clause");
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1223,8 +1214,7 @@ class OpenACCReductionClause final
       : OpenACCClauseWithVarList(OpenACCClauseKind::Reduction, BeginLoc,
                                  LParenLoc, EndLoc),
         Op(Operator) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1249,8 +1239,7 @@ class OpenACCLinkClause final
                     ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::Link, BeginLoc, LParenLoc,
                                  EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
@@ -1273,8 +1262,7 @@ class OpenACCDeviceResidentClause final
                               ArrayRef<Expr *> VarList, SourceLocation EndLoc)
       : OpenACCClauseWithVarList(OpenACCClauseKind::DeviceResident, BeginLoc,
                                  LParenLoc, EndLoc) {
-    llvm::uninitialized_copy(VarList, getTrailingObjects<Expr *>());
-    setExprs(getTrailingObjects<Expr *>(VarList.size()));
+    setExprs(getTrailingObjects<Expr *>(VarList.size()), VarList);
   }
 
 public:
diff --git a/clang/lib/AST/OpenACCClause.cpp b/clang/lib/AST/OpenACCClause.cpp
index 447545c733050..0c141fc908820 100644
--- a/clang/lib/AST/OpenACCClause.cpp
+++ b/clang/lib/AST/OpenACCClause.cpp
@@ -166,8 +166,7 @@ OpenACCGangClause::OpenACCGangClause(SourceLocation BeginLoc,
     : OpenACCClauseWithExprs(OpenACCClauseKind::Gang, BeginLoc, LParenLoc,
                              EndLoc) {
   assert(GangKinds.size() == IntExprs.size() && "Mismatch exprs/kind?");
-  llvm::uninitialized_copy(IntExprs, getTrailingObjects<Expr *>());
-  setExprs(getTrailingObjects<Expr *>(IntExprs.size()));
+  setExprs(getTrailingObjects<Expr *>(IntExprs.size()), IntExprs);
   llvm::uninitialized_copy(GangKinds, getTrailingObjects<OpenACCGangKind>());
 }
 

Copy link
Collaborator

@erichkeane erichkeane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would like the parameters renamed, else lgtm.

@jurahul jurahul force-pushed the clang_openacc_setexprs branch from 0d19fdd to cddc08d Compare May 13, 2025 19:38
@jurahul jurahul requested a review from erichkeane May 13, 2025 19:38
Add a `setExprs` overload to `OpenACCClauseWithExprs` that allows
initializing the trailing storage to help eliminate some code
duplication in various subclass constructors.
@jurahul jurahul force-pushed the clang_openacc_setexprs branch from cddc08d to 44d174b Compare May 13, 2025 19:47
@jurahul jurahul requested a review from erichkeane May 13, 2025 19:48
Copy link
Collaborator

@erichkeane erichkeane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fantastic, thank you so much for this change!

@jurahul jurahul merged commit 5f41928 into llvm:main May 14, 2025
11 checks passed
@jurahul jurahul deleted the clang_openacc_setexprs branch May 14, 2025 00:36
@llvm-ci
Copy link
Collaborator

llvm-ci commented May 14, 2025

LLVM Buildbot has detected a new failure on builder clang-m68k-linux-cross running on suse-gary-m68k-cross while building clang at step 4 "build stage 1".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/27/builds/10006

Here is the relevant piece of the build log for the reference
Step 4 (build stage 1) failure: 'ninja' (failure)
...
[118/453] Building CXX object tools/clang/lib/Analysis/FlowSensitive/CMakeFiles/obj.clangAnalysisFlowSensitive.dir/TypeErasedDataflowAnalysis.cpp.o
[119/453] Building CXX object tools/clang/lib/Tooling/Refactoring/CMakeFiles/obj.clangToolingRefactoring.dir/Rename/USRFindingAction.cpp.o
[120/453] Building CXX object tools/clang/lib/Analysis/FlowSensitive/CMakeFiles/obj.clangAnalysisFlowSensitive.dir/Transfer.cpp.o
[121/453] Linking CXX static library lib/libclangAnalysisFlowSensitive.a
[122/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/UppercaseLiteralSuffixCheck.cpp.o
[123/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/IdentifierNamingCheck.cpp.o
[124/453] Building CXX object tools/clang/lib/Tooling/Refactoring/CMakeFiles/obj.clangToolingRefactoring.dir/Rename/USRFinder.cpp.o
[125/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/ContainerSizeEmptyCheck.cpp.o
[126/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/UseStdMinMaxCheck.cpp.o
[127/453] Building CXX object tools/clang/lib/Sema/CMakeFiles/obj.clangSema.dir/SemaOpenMP.cpp.o
FAILED: tools/clang/lib/Sema/CMakeFiles/obj.clangSema.dir/SemaOpenMP.cpp.o 
/usr/bin/c++ -DCLANG_EXPORTS -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/tools/clang/lib/Sema -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/tools/clang/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/include -I/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wno-unnecessary-virtual-specifier -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -fno-strict-aliasing -O3 -DNDEBUG -std=c++17  -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -MD -MT tools/clang/lib/Sema/CMakeFiles/obj.clangSema.dir/SemaOpenMP.cpp.o -MF tools/clang/lib/Sema/CMakeFiles/obj.clangSema.dir/SemaOpenMP.cpp.o.d -o tools/clang/lib/Sema/CMakeFiles/obj.clangSema.dir/SemaOpenMP.cpp.o -c /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema/SemaOpenMP.cpp
In file included from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/Lookup.h:27,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/SemaInternal.h:18,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema/CoroutineStmtBuilder.h:20,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema/TreeTransform.h:16,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema/SemaOpenMP.cpp:16:
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/Sema.h:839:7: warning: ‘clang::Sema’ declared with greater visibility than the type of its field ‘clang::Sema::UnusedFileScopedDecls’ [-Wattributes]
  839 | class Sema final : public SemaBase {
      |       ^~~~
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/Sema.h:839:7: warning: ‘clang::Sema’ declared with greater visibility than the type of its field ‘clang::Sema::TentativeDefinitions’ [-Wattributes]
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/Sema.h:839:7: warning: ‘clang::Sema’ declared with greater visibility than the type of its field ‘clang::Sema::ExtVectorDecls’ [-Wattributes]
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/Sema.h:839:7: warning: ‘clang::Sema’ declared with greater visibility than the type of its field ‘clang::Sema::DelegatingCtorDecls’ [-Wattributes]
In file included from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include/llvm/ADT/APFloat.h:18,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/AST/APNumericStorage.h:12,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/AST/Decl.h:16,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/AST/Attr.h:18,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/include/clang/Sema/SemaOpenMP.h:18,
                 from /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema/SemaOpenMP.cpp:14:
In destructor ‘llvm::APInt::~APInt()’,
    inlined from ‘llvm::APSInt::~APSInt()’ at /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include/llvm/ADT/APSInt.h:23:21,
    inlined from ‘bool checkOMPArraySectionConstantForReduction(clang::ASTContext&, const clang::ArraySectionExpr*, bool&, llvm::SmallVectorImpl<llvm::APSInt>&)’ at /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/clang/lib/Sema/SemaOpenMP.cpp:18721:43:
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/include/llvm/ADT/APInt.h:192:18: warning: ‘void operator delete [](void*)’ called on a pointer to an unallocated object ‘1’ [-Wfree-nonheap-object]
  192 |       delete[] U.pVal;
      |                  ^~~~
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
[128/453] Building CXX object tools/clang/tools/extra/clang-tidy/bugprone/CMakeFiles/obj.clangTidyBugproneModule.dir/SmartPtrArrayMismatchCheck.cpp.o
[129/453] Building CXX object tools/clang/tools/extra/clang-tidy/bugprone/CMakeFiles/obj.clangTidyBugproneModule.dir/SuspiciousReallocUsageCheck.cpp.o
[130/453] Building CXX object tools/clang/tools/extra/include-cleaner/lib/CMakeFiles/obj.clangIncludeCleaner.dir/WalkAST.cpp.o
[131/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionSizeCheck.cpp.o
[132/453] Building CXX object tools/clang/lib/Tooling/Refactoring/CMakeFiles/obj.clangToolingRefactoring.dir/Rename/USRLocFinder.cpp.o
[133/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionCognitiveComplexityCheck.cpp.o
[134/453] Building CXX object tools/clang/lib/Tooling/Syntax/CMakeFiles/obj.clangToolingSyntax.dir/BuildTree.cpp.o
[135/453] Building CXX object tools/clang/tools/extra/clang-tidy/modernize/CMakeFiles/obj.clangTidyModernizeModule.dir/MinMaxUseInitializerListCheck.cpp.o
[136/453] Building CXX object tools/clang/tools/extra/clang-tidy/modernize/CMakeFiles/obj.clangTidyModernizeModule.dir/ModernizeTidyModule.cpp.o
[137/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/ConvertMemberFunctionsToStatic.cpp.o
[138/453] Building CXX object tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/SimplifyBooleanExprCheck.cpp.o
[139/453] Building CXX object lib/CodeGen/AsmPrinter/CMakeFiles/LLVMAsmPrinter.dir/AsmPrinter.cpp.o

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clang:frontend Language frontend issues, e.g. anything involving "Sema" clang Clang issues not falling into any other category
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants