[clang] [Clang][Parse] Delay parsing of noexcept-specifiers in friend function declarations (PR #90517)

via cfe-commits cfe-commits at lists.llvm.org
Tue Apr 30 04:47:41 PDT 2024


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 179e174945b6c0da462c534504720c9544aebf84 a68b48237edcc7023983fafd0849b0625a18ddbf -- clang/test/CXX/class/class.mem/class.mem.general/p8.cpp clang/lib/Parse/ParseDecl.cpp clang/lib/Sema/SemaDeclCXX.cpp clang/lib/Sema/SemaExceptionSpec.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
index f0422f6717..e7a8c9ed07 100644
--- a/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/clang/lib/Sema/SemaDeclCXX.cpp
@@ -19172,12 +19172,10 @@ void Sema::checkExceptionSpecification(
   }
 }
 
-void Sema::actOnDelayedExceptionSpecification(Decl *D,
-             ExceptionSpecificationType EST,
-             SourceRange SpecificationRange,
-             ArrayRef<ParsedType> DynamicExceptions,
-             ArrayRef<SourceRange> DynamicExceptionRanges,
-             Expr *NoexceptExpr) {
+void Sema::actOnDelayedExceptionSpecification(
+    Decl *D, ExceptionSpecificationType EST, SourceRange SpecificationRange,
+    ArrayRef<ParsedType> DynamicExceptions,
+    ArrayRef<SourceRange> DynamicExceptionRanges, Expr *NoexceptExpr) {
   if (!D)
     return;
 
@@ -19197,7 +19195,7 @@ void Sema::actOnDelayedExceptionSpecification(Decl *D,
                               ESI);
 
   // Update the exception specification on the function type.
-  Context.adjustExceptionSpec(FD, ESI, /*AsWritten*/true);
+  Context.adjustExceptionSpec(FD, ESI, /*AsWritten*/ true);
 
   if (CXXMethodDecl *MD = dyn_cast<CXXMethodDecl>(D)) {
     if (MD->isStatic())
diff --git a/clang/lib/Sema/SemaExceptionSpec.cpp b/clang/lib/Sema/SemaExceptionSpec.cpp
index 776d911be1..41bf273d12 100644
--- a/clang/lib/Sema/SemaExceptionSpec.cpp
+++ b/clang/lib/Sema/SemaExceptionSpec.cpp
@@ -258,7 +258,8 @@ Sema::UpdateExceptionSpec(FunctionDecl *FD,
 }
 
 static bool exceptionSpecNotKnownYet(const FunctionDecl *FD) {
-  ExceptionSpecificationType EST = FD->getType()->castAs<FunctionProtoType>()->getExceptionSpecType();
+  ExceptionSpecificationType EST =
+      FD->getType()->castAs<FunctionProtoType>()->getExceptionSpecType();
   if (EST == EST_Unparsed)
     return true;
   else if (EST != EST_Unevaluated)

``````````

</details>


https://github.com/llvm/llvm-project/pull/90517


More information about the cfe-commits mailing list