@@ -1117,6 +1118,31 @@ NumericLiteralParser::NumericLiteralParser(StringRef
TokSpelling,
if (isImaginary) break; // Cannot be repeated.
isImaginary = true;
continue; // Success.
+case '_':
+ if (isFPConstant)
+break; // Invalid for floats
erichkeane wrote:
> > I see the 2nds commit doesn't add any tests! Please make it do so
>
> I've tried and I'm not quite sure how to do it. The issue is we need to test
> AST printing of «implicitly declared» functions, such as builtins and
> functions instrumented by lldb, such as `log` for
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/94756
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
erichkeane wrote:
I see the 2nds commit doesn't add any tests! Please make it do so, else LGTM
(plus might want to do a 'merge' commit to reset the CI to a more stable state).
https://github.com/llvm/llvm-project/pull/93913
___
cfe-commits mailing
@@ -1790,24 +1782,25 @@ ExprResult Sema::ActOnMemberAccessExpr(Scope *S, Expr
*Base,
const TemplateArgumentListInfo *TemplateArgs;
DecomposeUnqualifiedId(Id, TemplateArgsBuffer,
NameInfo, TemplateArgs);
-
- bool IsArrow = (OpKind == tok::arrow);
@@ -390,29 +390,37 @@ bool Sema::isAcceptableNestedNameSpecifier(const
NamedDecl *SD,
/// (e.g., Base::), perform name lookup for that identifier as a
/// nested-name-specifier within the given scope, and return the result of that
/// name lookup.
-NamedDecl
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/92957
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
Sorry this took so long! Apparently I'd left some comments without finishing
my review. Did another look through, everything looks good, just some minor
nits. Apply/merge at your convenience.
@@ -1442,19 +1442,27 @@ SourceLocation
CXXUnresolvedConstructExpr::getBeginLoc() const {
CXXDependentScopeMemberExpr::CXXDependentScopeMemberExpr(
const ASTContext , Expr *Base, QualType BaseType, bool IsArrow,
SourceLocation OperatorLoc, NestedNameSpecifierLoc
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/94529
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane closed
https://github.com/llvm/llvm-project/pull/93742
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/94347
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/94288
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2469,11 +2469,20 @@ static bool CheckConstexprFunctionBody(Sema ,
const FunctionDecl *Dcl,
// base class sub-objects shall be a constexpr constructor.
//
// Note that this rule is distinct from the "requirements for a constexpr
- // function", so is not checked
@@ -505,6 +505,9 @@ COMPATIBLE_LANGOPT(IncrementalExtensions, 1, 0, " True if
we want to process sta
BENIGN_LANGOPT(CheckNew, 1, 0, "Do not assume C++ operator new may not return
NULL")
+BENIGN_LANGOPT(CheckConstexprFunctionBodies, 1, 1,
+ "True if we want to
@@ -961,6 +961,10 @@ def Wdeprecated : Flag<["-"], "Wdeprecated">,
Group,
HelpText<"Enable warnings for deprecated constructs and define
__DEPRECATED">;
def Wno_deprecated : Flag<["-"], "Wno-deprecated">, Group,
Visibility<[ClangOption, CC1Option]>;
+def
@@ -5813,6 +5813,23 @@ static TypoCorrection TryTypoCorrectionForCall(Sema ,
Expr *Fn,
return TypoCorrection();
}
+static bool isParenthetizedAndQualifiedAddressOfExpr(Expr *Fn) {
+ if (!isa(Fn))
+return false;
+
+ Fn = Fn->IgnoreParens();
erichkeane
@@ -7807,6 +7833,7 @@ void Sema::AddTemplateOverloadCandidate(
Candidate.IgnoreObjectArgument =
isa(Candidate.Function) &&
!isa(Candidate.Function);
+Candidate.TookAddressOfOverload = false;
erichkeane wrote:
Feel like Candidate should
@@ -3048,10 +3050,12 @@ class OverloadExpr : public Expr {
Result.HasFormOfMemberPointer = (E == Ovl && Ovl->getQualifier());
Result.IsAddressOfOperand = true;
+ Result.IsAddressOfOperandWithParen = HasParen;
erichkeane wrote:
Cleanup nit: I
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/93430
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/93430
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
erichkeane wrote:
Yep! I added it to the 'run' line as well, and adding it there fixes the test
on my machine. So I suspect that would be the fix?
https://github.com/llvm/llvm-project/pull/94000
___
cfe-commits mailing list
erichkeane wrote:
Bizarrely if I run the piped version, I get no error:
```
ekeane@dev-epyc4:/local/home/ekeane/llvm-project/build$
/local/home/ekeane/llvm-project/build/bin/clang -### -x cuda
--target=powerpc64le-linux-gnu -std=c++11 --cuda-gpu-arch=sm_35 -nocudainc
-nocudalib
https://github.com/erichkeane updated
https://github.com/llvm/llvm-project/pull/93742
>From 51792c63e8fee3ad662174d6a53bbca195cbc1b4 Mon Sep 17 00:00:00 2001
From: erichkeane
Date: Fri, 24 May 2024 12:12:29 -0700
Subject: [PATCH 1/4] [OpenACC] Loop construct basic Sema and AST work
This patch
erichkeane wrote:
I've been having this fail in my local build for a few days now:
```
TEST 'Clang :: Driver/offloading-interoperability.c'
FAILED
Exit Code: 1
Command Output (stderr):
--
RUN: at line 4: /local/home/ekeane/llvm-project/build/bin/clang
erichkeane wrote:
Did another merge to help with my work on followups.
https://github.com/llvm/llvm-project/pull/93742
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane updated
https://github.com/llvm/llvm-project/pull/93742
>From 51792c63e8fee3ad662174d6a53bbca195cbc1b4 Mon Sep 17 00:00:00 2001
From: erichkeane
Date: Fri, 24 May 2024 12:12:29 -0700
Subject: [PATCH 1/3] [OpenACC] Loop construct basic Sema and AST work
This patch
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/93966
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -14,9 +14,11 @@
#define LLVM_CLANG_SEMA_SEMASYCL_H
#include "clang/AST/Decl.h"
+#include "clang/AST/DeclBase.h"
erichkeane wrote:
Wonder same about declbase as well, probably a bit of work on a few of these
includes to do that sort of analysis.
@@ -18,6 +18,7 @@
#include "clang/AST/Type.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/TargetInfo.h"
+#include "clang/Sema/ParsedAttr.h"
erichkeane wrote:
Same question here.
https://github.com/llvm/llvm-project/pull/93966
@@ -3825,6 +3843,115 @@ class Sema final : public SemaBase {
void redelayDiagnostics(sema::DelayedDiagnosticPool );
+ /// Diagnose mutually exclusive attributes when present on a given
erichkeane wrote:
Where did this section of stuff come from? At
@@ -0,0 +1,57 @@
+//===- SemaSwift.h --- Swift language-specific routines ---*- C++
-*---===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier:
@@ -32,6 +32,7 @@
#include "clang/Basic/Specifiers.h"
#include "clang/Sema/DeclSpec.h"
#include "clang/Sema/Ownership.h"
+#include "clang/Sema/ParsedAttr.h"
erichkeane wrote:
Could this be a forward decl?
https://github.com/llvm/llvm-project/pull/93966
https://github.com/erichkeane commented:
I didn't take a close look at the individual .cpp files, I assume that is
mostly just Copy & paste.
I would like us to be a little more forward-decl aggressive in the headers
however, and perhpas try to minimize what gets pushed up to Sema.h.
@@ -5004,6 +5004,20 @@ static bool CheckDeducedPlaceholderConstraints(Sema ,
const AutoType ,
return true;
MultiLevelTemplateArgumentList MLTAL(Concept, CanonicalConverted,
/*Final=*/false);
+ // Build up an EvaluationContext with
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/80801
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
erichkeane wrote:
> > No worries, and I reverted it for you. When you have the fix ready, I'm
> > happy to verify it on our builders before you reland.
>
> Can you also reopen this PR, please? For documentation/history reasons, it's
> probably better to provide a fix within the scope of this
https://github.com/erichkeane approved this pull request.
Sensible to me! Definitely needs a release note. Perhaps an alert on
discourse about 'potentially breaking' changes.
https://github.com/llvm/llvm-project/pull/93873
___
cfe-commits mailing
https://github.com/erichkeane closed
https://github.com/llvm/llvm-project/pull/93131
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
Sensible to me, I'm all for it.
https://github.com/llvm/llvm-project/pull/93849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
erichkeane wrote:
> What should be the next step following the approvals?
If you do not have 'squash and merge' rights here, one of us can do it for you
once testing completes.
https://github.com/llvm/llvm-project/pull/93131
___
cfe-commits mailing
erichkeane wrote:
Did a merge which will hopefully fix the build failures this was seeing.
https://github.com/llvm/llvm-project/pull/93742
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/erichkeane updated
https://github.com/llvm/llvm-project/pull/93742
>From 51792c63e8fee3ad662174d6a53bbca195cbc1b4 Mon Sep 17 00:00:00 2001
From: erichkeane
Date: Fri, 24 May 2024 12:12:29 -0700
Subject: [PATCH 1/3] [OpenACC] Loop construct basic Sema and AST work
This patch
https://github.com/erichkeane updated
https://github.com/llvm/llvm-project/pull/93742
>From 51792c63e8fee3ad662174d6a53bbca195cbc1b4 Mon Sep 17 00:00:00 2001
From: erichkeane
Date: Fri, 24 May 2024 12:12:29 -0700
Subject: [PATCH 1/3] [OpenACC] Loop construct basic Sema and AST work
This patch
@@ -0,0 +1,164 @@
+
+// RUN: %clang_cc1 %s -fopenacc -ast-dump | FileCheck %s
+
+// Test this with PCH.
+// RUN: %clang_cc1 %s -fopenacc -emit-pch -o %t %s
+// RUN: %clang_cc1 %s -fopenacc -include-pch %t -ast-dump-all | FileCheck %s
+
+#ifndef PCH_HELPER
+#define PCH_HELPER
+
https://github.com/erichkeane updated
https://github.com/llvm/llvm-project/pull/93742
>From 51792c63e8fee3ad662174d6a53bbca195cbc1b4 Mon Sep 17 00:00:00 2001
From: erichkeane
Date: Fri, 24 May 2024 12:12:29 -0700
Subject: [PATCH 1/2] [OpenACC] Loop construct basic Sema and AST work
This patch
@@ -0,0 +1,164 @@
+
+// RUN: %clang_cc1 %s -fopenacc -ast-dump | FileCheck %s
+
+// Test this with PCH.
+// RUN: %clang_cc1 %s -fopenacc -emit-pch -o %t %s
+// RUN: %clang_cc1 %s -fopenacc -include-pch %t -ast-dump-all | FileCheck %s
+
+#ifndef PCH_HELPER
+#define PCH_HELPER
+
https://github.com/erichkeane created
https://github.com/llvm/llvm-project/pull/93742
This patch implements the 'loop' construct AST, as well as the basic
appertainment rule. Additionally, it sets up the 'parent' compute construct,
which is necessary for codegen/other diagnostics.
A 'loop'
erichkeane wrote:
> One suggestion, if you are going to go about this problem systematically, try
> to tackle the hardest problems first.
>
> For example: Try to make `MultiLevelTemplateArgumentList` const correct. I
> would like other suggestions as well.
Right, yeah. Unfortunately
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/93556
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -221,8 +221,13 @@ static const ValueDecl *getAsSimpleValueDeclRef(const
ASTContext ,
// We model class non-type template parameters as their template parameter
// object declaration.
- if (V.isStruct() || V.isUnion())
+ if (V.isStruct() || V.isUnion()) {
+//
https://github.com/erichkeane commented:
This change seems smaller than I expected here, so I guess I'm not entirely
sure what is going on. Can you better explain how this ends up using
structural values instead of the TemplateParamObjectDecl?
https://github.com/llvm/llvm-project/pull/93556
@@ -221,8 +221,13 @@ static const ValueDecl *getAsSimpleValueDeclRef(const
ASTContext ,
// We model class non-type template parameters as their template parameter
// object declaration.
- if (V.isStruct() || V.isUnion())
+ if (V.isStruct() || V.isUnion()) {
+//
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/93556
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane closed
https://github.com/llvm/llvm-project/pull/91720
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1576,7 +1576,10 @@ ExprResult Parser::ParseLambdaExpressionAfterIntroducer(
TrailingReturnTypeLoc, ),
std::move(Attributes), DeclEndLoc);
-Actions.ActOnLambdaClosureQualifiers(Intro, MutableLoc);
+// We have called
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/93265
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1576,7 +1576,10 @@ ExprResult Parser::ParseLambdaExpressionAfterIntroducer(
TrailingReturnTypeLoc, ),
std::move(Attributes), DeclEndLoc);
-Actions.ActOnLambdaClosureQualifiers(Intro, MutableLoc);
+// We have called
https://github.com/erichkeane commented:
I hope @cor3ntin comes and checks this out, but it generally looks OK to me. 1
oddity I'd like to hear about (why we can't do ActOnLambdaClosureQualifiers in
the same place).
https://github.com/llvm/llvm-project/pull/93206
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/93206
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1302,7 +1302,8 @@ static void verifyDiagnosticWording(const Record ) {
// closing '}', skipping intermediary {} pairs.
size_t BraceCount = 1;
-auto Iter = FullDiagText.begin() + /*%select{*/ 8;
+constexpr size_t PercentSelectBraceLen = sizeof("%select{") -
@@ -1355,7 +1357,7 @@ static void verifyDiagnosticWording(const Record ) {
if (isDigit(FullDiagText.back()) && *(FullDiagText.end() - 2) == '}') {
// Scan backwards to find the opening curly brace.
size_t BraceCount = 1;
-auto Iter = FullDiagText.end() - /*}0*/
https://github.com/erichkeane approved this pull request.
1 suggestion on improving the diagnostics, else, LGTM.
https://github.com/llvm/llvm-project/pull/93229
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
@@ -1213,6 +1213,194 @@ static bool isRemark(const Record ) {
return ClsName == "CLASS_REMARK";
}
+// Presumes the text has been split at the first whitespace or hyphen.
+static bool isExemptAtStart(StringRef Text) {
+ // Fast path, the first character is lowercase or not
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/93229
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,27 @@
+// RUN: %clang_cc1 -ast-print %s -o - | FileCheck %s
+
+// CHECK: extern "C" int printf(const char *, ...);
+extern "C" int printf(const char *...);
+
+// CHECK: extern "C++" {
+// CHECK-NEXT: int f(int);
+// CHECK-NEXT: int g(int);
+// CHECK-NEXT: }
+extern
@@ -1145,13 +1145,15 @@ void DeclPrinter::VisitLinkageSpecDecl(LinkageSpecDecl
*D) {
l = "C++";
}
+ bool HasMoreThanOneDecl =
+ *D->decls_begin() && D->decls_begin()->getNextDeclInContext();
erichkeane wrote:
It just seems a bit more readable to
@@ -0,0 +1,27 @@
+// RUN: %clang_cc1 -ast-print %s -o - | FileCheck %s
+
+// CHECK: extern "C" int printf(const char *, ...);
+extern "C" int printf(const char *...);
+
+// CHECK: extern "C++" {
erichkeane wrote:
We don't really have much guarantees besides
@@ -1145,13 +1145,15 @@ void DeclPrinter::VisitLinkageSpecDecl(LinkageSpecDecl
*D) {
l = "C++";
}
+ bool HasMoreThanOneDecl =
+ *D->decls_begin() && D->decls_begin()->getNextDeclInContext();
erichkeane wrote:
```suggestion
@@ -0,0 +1,27 @@
+// RUN: %clang_cc1 -ast-print %s -o - | FileCheck %s
+
+// CHECK: extern "C" int printf(const char *, ...);
+extern "C" int printf(const char *...);
+
+// CHECK: extern "C++" {
+// CHECK-NEXT: int f(int);
+// CHECK-NEXT: int g(int);
+// CHECK-NEXT: }
+extern
@@ -0,0 +1,27 @@
+// RUN: %clang_cc1 -ast-print %s -o - | FileCheck %s
+
+// CHECK: extern "C" int printf(const char *, ...);
+extern "C" int printf(const char *...);
+
+// CHECK: extern "C++" {
erichkeane wrote:
@AaronBallman : What do we think of this? This
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/93179
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -3548,6 +3561,56 @@ class Sema final : public SemaBase {
BuiltinFunction
};
+ /// A helper function to provide Attribute Location for the Attr types
erichkeane wrote:
Right, my concern is the comment claims it is for both, but I see you copied it
@@ -67,6 +67,7 @@
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/StringExtras.h"
erichkeane wrote:
Got it, thanks!
https://github.com/llvm/llvm-project/pull/93179
https://github.com/erichkeane commented:
I'm in favor here, the changes to SemaDeclAttr are reasonable.
https://github.com/llvm/llvm-project/pull/93179
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
@@ -3548,6 +3561,56 @@ class Sema final : public SemaBase {
BuiltinFunction
};
+ /// A helper function to provide Attribute Location for the Attr types
erichkeane wrote:
Is this comment right? ParsedAttr will always call the non-template version
https://github.com/erichkeane edited
https://github.com/llvm/llvm-project/pull/93179
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -67,6 +67,7 @@
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/StringExtras.h"
erichkeane wrote:
What do we need this addition for?
https://github.com/llvm/llvm-project/pull/93179
erichkeane wrote:
> > the GNU `__attribute__((assume))` spelling is no longer diagnosed as a
> > C++23 extension
>
> @erichkeane @AaronBallman Just wanted to double-check whether this is fine
> because I committed this change after this pr was approved.
Yep, that makes sense to me. Still
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/92852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane closed
https://github.com/llvm/llvm-project/pull/92808
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane commented:
The original patch changed some of the ParsedStmtContext's in ParseOMP that
might need to be changed back? Looking back, I think the intent there was in
part to not specify OMP standalone directives, so that part should be reverted
as well perhaps?
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/91720
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
I think this looks ok, I'd love it if @cor3ntin took another look, but I'm as
happy as before.
https://github.com/llvm/llvm-project/pull/92527
___
cfe-commits mailing list
erichkeane wrote:
> > Hmm... I'm not sure this meets our requirements for inclusion as an
> > attribute. The semantics of this are pretty opaque, no obvious significant
> > motivation/applicability in the base languages, etc. There doesn't seem to
> > be any reasonable use case that I can
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/92674
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -130,5 +130,33 @@ void foo() {
//CHECK: #pragma acc parallel device_type(SomeStructImpl)
#pragma acc parallel device_type (SomeStructImpl)
while(true);
+
+//CHECK: #pragma acc parallel reduction(+: iPtr)
+#pragma acc parallel reduction(+: iPtr)
erichkeane
@@ -715,6 +787,65 @@ SemaOpenACC::ActOnClause(ArrayRef
ExistingClauses,
return nullptr;
}
+/// OpenACC 3.3 section 2.5.15:
+/// At a mininmum, the supported data types include ... the numerical data
types
+/// in C, C++, and Fortran.
+///
+/// If the reduction var is a
@@ -426,6 +438,24 @@ SemaOpenACC::ActOnClause(ArrayRef
ExistingClauses,
<< /*NoArgs=*/1 << Clause.getDirectiveKind() << MaxArgs
<< Clause.getIntExprs().size();
+// OpenACC 3.3 Section 2.5.4:
+// A reduction clause may not appear on a parallel
@@ -68,7 +68,7 @@ function compute-projects-to-test() {
done
;;
clang)
- for p in clang-tools-extra compiler-rt flang lldb cross-project-tests; do
+ for p in clang-tools-extra compiler-rt lldb cross-project-tests; do
erichkeane wrote:
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/84934
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/92672
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/erichkeane approved this pull request.
https://github.com/llvm/llvm-project/pull/92653
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1459,11 +1460,11 @@ static AccessResult CheckEffectiveAccess(Sema ,
llvm_unreachable("invalid access result");
}
-static Sema::AccessResult CheckAccess(Sema , SourceLocation Loc,
- AccessTarget ) {
+static SemaAccess::AccessResult
@@ -0,0 +1,112 @@
+//===- SemaAccess.h - C++ Access Control
--===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier:
https://github.com/erichkeane approved this pull request.
Agreed, I think the standards compliance here is worth it to see what falls out
of this.
https://github.com/llvm/llvm-project/pull/92597
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
erichkeane wrote:
> @erichkeane I posted the comment on the wrong PR. The memory leak is in
> #90786 not this PR so I deleted the comment i made here. #90786 has already
> been reverted.
Thanks! I am still catching up on emails, and I think I figured that out
literally moments ago :)
https://github.com/erichkeane commented:
You seem to have lost the tests in the latest version of this commit.
https://github.com/llvm/llvm-project/pull/91720
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
erichkeane wrote:
Did a message get deleted here? I saw in my email that you pointed out there
is a memory leak because of this patch.
(https://lab.llvm.org/buildbot/#/builders/239/builds/7043)
If so, we probably should revert this until that gets figured out.
@@ -5695,19 +5694,35 @@ ExprResult Sema::BuildCXXDefaultInitExpr(SourceLocation
Loc, FieldDecl *Field) {
ImmediateCallVisitor V(getASTContext());
if (!NestedDefaultChecking)
V.TraverseDecl(Field);
- if (V.HasImmediateCalls) {
+
+ // CWG1815
+ // Support lifetime
1 - 100 of 2361 matches
Mail list logo