https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/83842
>From 4725321631e69c8d8480e0dba85128d177541a89 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Mon, 4 Mar 2024 08:10:35 -0500
Subject: [PATCH 1/4] [Clang][Sema] Fix crash when using name of
Unresolve
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/83842
>From 4725321631e69c8d8480e0dba85128d177541a89 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Mon, 4 Mar 2024 08:10:35 -0500
Subject: [PATCH 1/5] [Clang][Sema] Fix crash when using name of
Unresolve
https://github.com/sdkrystian closed
https://github.com/llvm/llvm-project/pull/83842
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/84050
Consider the following:
```cpp
template
struct A
{
auto f()
{
return this->x;
}
};
```
Although `A` has no dependent base classes and the lookup context for `x` is
the current instantiation
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/84050
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/84050
>From 1495e87d7cbbab6a824d9d1d2bf53d0ef9ec9125 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 1 Mar 2024 08:08:52 -0500
Subject: [PATCH 1/7] [Clang][Sema] Earlier resolution of class member acce
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/84050
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/84050
>From f5ed116971fd90608b84578fdb61761924d65c98 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 1 Mar 2024 08:08:52 -0500
Subject: [PATCH 1/8] [Clang][Sema] Earlier resolution of class member acce
sdkrystian wrote:
@wlei-llvm Not a known issue... could you provide a repro? I'll look into this
in the meantime.
https://github.com/llvm/llvm-project/pull/83842
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/ma
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/84457
This reverts commit a642eb89bdaf10c6b4994fc1187de27b441236ed.
>From 02f98e180b94bec0c6abafeaaf8a7513f5116eab Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 8 Mar 2024 05:44:48 -0500
Subject: [P
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/84457
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian closed
https://github.com/llvm/llvm-project/pull/84457
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
sdkrystian wrote:
@bgra8 Reverted. Any sort of repro would be appreciated :)
https://github.com/llvm/llvm-project/pull/83842
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -149,6 +191,76 @@ class TextTokenRetokenizer {
addToken();
}
+ /// Extract a type argument
+ bool lexDataType(Token &Tok) {
+if (isEnd())
+ return false;
+Position SavedPos = Pos;
+consumeWhitespace();
+SmallString<32> NextToken;
+SmallStrin
sdkrystian wrote:
@wlei-llvm Thank you! I've reduced the repro to this:
```cpp
struct A { };
template
void f(A);
struct B {
void f();
void g() {
f(A());
}
};
```
https://github.com/llvm/llvm-project/pull/83842
___
cfe-commits mailing list
sdkrystian wrote:
So, it seems that this crash occurs because we filter out all non-template
functions, which will trigger ADL if the only class member we found was a
non-template function.
https://github.com/llvm/llvm-project/pull/83842
___
cfe-comm
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78243
>From 357d4665dac2da1d7899b72f1249de7bc8760342 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 12 Jan 2024 13:45:15 -0500
Subject: [PATCH 1/2] [Clang][Parse] Diagnose member template declarations
sdkrystian wrote:
@erichkeane I have refactored `ParseSingleDeclarationAfterTemplate` (now named
`ParseDeclarationAfterTemplate`) to call `ParseDeclGroup` and return the
resultant `DeclGroup`.
With respect to moving the point of diagnosis to `FinalizeDeclaratorGroup`: as
of now, the diagnost
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78243
>From c84243067045958d1d3007bd07bd49b7d4bfc642 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 12 Jan 2024 13:45:15 -0500
Subject: [PATCH 1/2] [Clang][Parse] Diagnose member template declarations
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78595
>From 75524a1f443c86787f0605d7890a1caa01c5ebf5 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 17 Jan 2024 10:13:29 -0500
Subject: [PATCH 1/2] [Clang][Sema] Diagnose use of template keyword after
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78720
>From 7a08876edcbae41cfbc1595348cd0c66ea813d7c Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 19 Jan 2024 08:37:21 -0500
Subject: [PATCH] [Clang][Sema] Allow elaborated-type-specifiers that decl
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/79683
Reapplies #78274 with the addition of a default-error warning
(`strict-primary-template-shadow`) that is issued for instances of shadowing
which were previously accepted prior to this patch.
>From abc8f062a
sdkrystian wrote:
See #79683
https://github.com/llvm/llvm-project/pull/78274
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
sdkrystian wrote:
Need to run clang-format on this and mention the flag in the release notes, but
should be otherwise GTG
https://github.com/llvm/llvm-project/pull/79683
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cg
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/79683
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -6506,12 +6500,25 @@ NamedDecl *Sema::HandleDeclarator(Scope *S, Declarator
&D,
RemoveUsingDecls(Previous);
}
- if (Previous.isSingleResult() &&
- Previous.getFoundDecl()->isTemplateParameter()) {
+ // if (Previous.isSingleResult() &&
+ //Previous.getFoun
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79683
>From 391254191932c8ca325346978de5c57b233cbab8 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 16 Jan 2024 08:05:33 -0500
Subject: [PATCH] Reapply "[Clang][Sema] Diagnose function/variable templa
@@ -6535,6 +6543,12 @@ NamedDecl *Sema::HandleDeclarator(Scope *S, Declarator
&D,
if (getLangOpts().CPlusPlus)
CheckExtraCXXDefaultArguments(D);
+ // The scope passed in may not be a decl scope. Zip up the scope tree until
+ // we find one that is.
+ while ((S->getF
@@ -885,16 +885,19 @@ bool Sema::DiagnoseUninstantiableTemplate(SourceLocation
PointOfInstantiation,
/// that the template parameter 'PrevDecl' is being shadowed by a new
/// declaration at location Loc. Returns true to indicate that this is
/// an error, and false otherwise.
@@ -885,16 +885,19 @@ bool Sema::DiagnoseUninstantiableTemplate(SourceLocation
PointOfInstantiation,
/// that the template parameter 'PrevDecl' is being shadowed by a new
/// declaration at location Loc. Returns true to indicate that this is
/// an error, and false otherwise.
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/79760
This removes on-stack `TemplateArgumentList`'s. They were primary used to pass
an `ArrayRef` to `Sema::getTemplateInstantiationArgs`, which
had a `const TemplateArgumentList*` parameter for the innermost temp
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78720
>From e0c682e9fd2c88554c78349bc0b4f32403959e7b Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 19 Jan 2024 08:37:21 -0500
Subject: [PATCH] [Clang][Sema] Allow elaborated-type-specifiers that decl
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78720
>From e2cf4ed5f8f6d695ce3eea5b969357d02f42e6ab Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 19 Jan 2024 08:37:21 -0500
Subject: [PATCH] [Clang][Sema] Allow elaborated-type-specifiers that decl
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79683
>From 60e72f20f5bf74a3e62688cfcaa2bc623f0faff1 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 16 Jan 2024 08:05:33 -0500
Subject: [PATCH] Reapply "[Clang][Sema] Diagnose function/variable templa
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79683
>From a9a6b6ea71ef57eabd136d3b00a9dad0011a86e5 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 16 Jan 2024 08:05:33 -0500
Subject: [PATCH] Reapply "[Clang][Sema] Diagnose function/variable templa
sdkrystian wrote:
@cor3ntin Addressed review comments... Please approve if it all checks out :)
https://github.com/llvm/llvm-project/pull/79683
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-
sdkrystian wrote:
Ping @cor3ntin
https://github.com/llvm/llvm-project/pull/78243
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -3,21 +3,21 @@ template // expected-note{{previous
template}}
class X0 {
public:
typedef int size_type;
-
+
X0(int);
~X0();
-
+
void f0(const T&, const U&);
-
+
T& operator[](int i) const;
-
+
void f1(size_type) const;
void f2(size_type) const;
@@ -4394,8 +4394,14 @@ NestedNameSpecifierLoc
TreeTransform::TransformNestedNameSpecifierLoc(
SS.Adopt(ETL.getQualifierLoc());
TL = ETL.getNamedTypeLoc();
}
-SS.Extend(SemaRef.Context, /*FIXME:*/ SourceLocation(), TL,
- Q.ge
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79760
>From 1f6d9f32e21032b11f6e6a4fd6186ccaee88e2e2 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Sun, 28 Jan 2024 11:03:52 -0500
Subject: [PATCH] [Clang][NFC] Remove TemplateArgumentList::OnStack
---
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78595
>From ba33d31a3029ab538ae5ddc61609b848ee1261d4 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 17 Jan 2024 10:13:29 -0500
Subject: [PATCH] [Clang][Sema] Diagnose use of template keyword after
de
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/78595
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78595
>From 529d16d3509219b9d1cc74c515ec101b1316b6d1 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 17 Jan 2024 10:13:29 -0500
Subject: [PATCH] [Clang][Sema] Diagnose use of template keyword after
de
sdkrystian wrote:
@cor3ntin Addressed your comments. I also added the error to a diagnostics
group (`template-in-declaration-name`)
https://github.com/llvm/llvm-project/pull/78595
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.l
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/78595
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -301,7 +279,9 @@ class TemplateArgumentList final
unsigned size() const { return NumArguments; }
/// Retrieve a pointer to the template argument list.
- const TemplateArgument *data() const { return Arguments; }
+ const TemplateArgument *data() const {
+return get
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/79760
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/79760
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78243
>From 396f51a606562039242544c8521239c42d8dcb16 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 12 Jan 2024 13:45:15 -0500
Subject: [PATCH 1/2] [Clang][Parse] Diagnose member template declarations
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/80171
According to [[dcl.type.elab]p4](http://eel.is/c++draft/dcl.type.elab#4):
> If an _elaborated-type-specifier_ appears with the `friend` specifier as an
> entire _member-declaration_, the _member-declaration_ s
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80171
>From 62e3b97ac668b7a12331b01cb5e11549d28dd533 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 31 Jan 2024 11:09:11 -0500
Subject: [PATCH] [Clang][Sema] Diagnose friend declarations with enum
el
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/80171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80171
>From 16931f5be26b689f6142ffa272e07be50b1d35d6 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 31 Jan 2024 11:09:11 -0500
Subject: [PATCH] [Clang][Sema] Diagnose friend declarations with enum
el
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79760
>From 87b8ab6b6d7f70ae27c766f4038683f9237cc65a Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Sun, 28 Jan 2024 11:03:52 -0500
Subject: [PATCH] [Clang][NFC] Remove TemplateArgumentList::OnStack
---
sdkrystian wrote:
@erichkeane I added the following release note:
> Removed support for constructing on-stack `TemplateArgumentList`s. Interfaces
> should instead use `ArrayRef` to pass template arguments.
I'm not entirely sure how to benchmark these changes. Perhaps I could determine
the diff
sdkrystian wrote:
@erichkeane I ended up writing a python script that compiles the TUs in
`clang/lib` with `-print-stats` and then sums up the total bytes allocated by
`ASTContext`. Ended up with a 0.4% decrease in memory usage.
This does however rely on `compile_commands.json`, and boost does
sdkrystian wrote:
Ping @erichkeane
https://github.com/llvm/llvm-project/pull/78243
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79760
>From 2e3e1a1dcaf1a6483e326c0d537af50e264098bb Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Sun, 28 Jan 2024 11:03:52 -0500
Subject: [PATCH] [Clang][NFC] Remove TemplateArgumentList::OnStack
---
sdkrystian wrote:
@erichkeane How does this sound?
> Removed support for constructing on-stack `TemplateArgumentList`s; interfaces
> should instead use `ArrayRef` to pass template arguments.
> This reduces AST memory usage by 0.4% when compiling clang.
https://github.com/llvm/llvm-project/pu
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78243
>From 2f691fa57791b40c7598df9b83f3ba3417c07c39 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 12 Jan 2024 13:45:15 -0500
Subject: [PATCH 1/2] [Clang][Parse] Diagnose member template declarations
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78243
>From 07999d290eaf5476189865b8050153d1e25011d2 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Fri, 12 Jan 2024 13:45:15 -0500
Subject: [PATCH] [Clang][Parse] Diagnose member template declarations wit
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/79760
>From 2ea817f2103cf146e21128358c1064871a309664 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Sun, 28 Jan 2024 11:03:52 -0500
Subject: [PATCH] [Clang][NFC] Remove TemplateArgumentList::OnStack
---
https://github.com/sdkrystian closed
https://github.com/llvm/llvm-project/pull/78243
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80171
>From a39aab07696acfea3e3b78d6ad92c8b771eaf0d2 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 31 Jan 2024 11:09:11 -0500
Subject: [PATCH 1/2] [Clang][Sema] Diagnose friend declarations with enum
sdkrystian wrote:
@cor3ntin I added a test with a note stating that
[CWG2363](http://wg21.link/CWG2363) was closed as NAD
https://github.com/llvm/llvm-project/pull/80171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cg
https://github.com/sdkrystian closed
https://github.com/llvm/llvm-project/pull/79760
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78595
>From 3c211c6fb78f48dc68634e042e94dbe2f33fb999 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 17 Jan 2024 10:13:29 -0500
Subject: [PATCH] [Clang][Sema] Diagnose use of template keyword after
de
@@ -17534,79 +17534,6 @@ Decl
*Sema::BuildStaticAssertDeclaration(SourceLocation StaticAssertLoc,
return Decl;
}
-/// Perform semantic analysis of the given friend type declaration.
-///
-/// \returns A friend declaration that.
-FriendDecl *Sema::CheckFriendTypeDecl(SourceL
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/80359
Consider the following:
```cpp
namespace N0 {
namespace N1 {
template
int x1 = 0;
}
using namespace N1;
}
template<>
int N0::x1;
```
According to [[dcl.meaning.general]
p3.3](http://eel.is/c++dr
sdkrystian wrote:
Still need to add a release note, but this should otherwise complete
https://github.com/llvm/llvm-project/pull/80359
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/80359
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/80359
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80359
>From f23e899cd409463c6934b09929e3deb4a69205ef Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Thu, 1 Feb 2024 17:34:59 -0500
Subject: [PATCH] [Clang][Sema] Correctly look up primary template for vari
sdkrystian wrote:
@erichkeane Release note added
https://github.com/llvm/llvm-project/pull/80359
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian closed
https://github.com/llvm/llvm-project/pull/80359
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
sdkrystian wrote:
@erichkeane cor3ntin approved... please take a look when you have time
https://github.com/llvm/llvm-project/pull/78595
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/78595
>From 44689d064a5e4c908c0011532302e9b84e060fab Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Wed, 17 Jan 2024 10:13:29 -0500
Subject: [PATCH] [Clang][Sema] Diagnose use of template keyword after
de
https://github.com/sdkrystian closed
https://github.com/llvm/llvm-project/pull/78595
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
sdkrystian wrote:
@philnik777 https://lab.llvm.org/buildbot/#/builders/46/builds/63116
https://github.com/llvm/llvm-project/pull/80436
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
sdkrystian wrote:
Ping @cor3ntin
https://github.com/llvm/llvm-project/pull/79683
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/80842
According to [[expr.prim.id.qual]
p3](http://eel.is/c++draft/expr.prim.id.qual#3):
> The _nested-name-specifier_ `:`: nominates the global namespace. A
> _nested-name-specifier_ with a _computed-type-specif
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/80842
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -6295,22 +6297,36 @@ bool Sema::diagnoseQualifiedDeclaration(CXXScopeSpec
&SS, DeclContext *DC,
<< FixItHint::CreateRemoval(TemplateId->TemplateKWLoc);
NestedNameSpecifierLoc SpecLoc(SS.getScopeRep(), SS.location_data());
- while (SpecLoc.getPrefix()) {
+ do {
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80842
>From 75734c9cf5c9467130fdc08efa64eb624e659879 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 6 Feb 2024 09:14:42 -0500
Subject: [PATCH] [Clang][Sema] Diagnose declarative nested-name-specifiers
@@ -6295,22 +6297,36 @@ bool Sema::diagnoseQualifiedDeclaration(CXXScopeSpec
&SS, DeclContext *DC,
<< FixItHint::CreateRemoval(TemplateId->TemplateKWLoc);
NestedNameSpecifierLoc SpecLoc(SS.getScopeRep(), SS.location_data());
- while (SpecLoc.getPrefix()) {
+ do {
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80842
>From 13abf4ca1003f4cc04926881ce74c5f4818a761c Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 6 Feb 2024 09:14:42 -0500
Subject: [PATCH] [Clang][Sema] Diagnose declarative nested-name-specifiers
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/80864
According to [[dcl.fct] p23](http://eel.is/c++draft/dcl.fct#23):
> An abbreviated function template can have a _template-head_. The invented
> _template-parameters_ are appended to the _template-parameter-list
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80842
>From c7457d759a93a04c3243c036e1c31296c8e81ec4 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 6 Feb 2024 09:14:42 -0500
Subject: [PATCH] [Clang][Sema] Diagnose declarative nested-name-specifiers
@@ -9759,7 +9759,7 @@ Sema::ActOnFunctionDeclarator(Scope *S, Declarator &D,
DeclContext *DC,
SmallVector TemplateParamLists;
llvm::append_range(TemplateParamLists, TemplateParamListsRef);
if (TemplateParameterList *Invented = D.getInventedTemplateParameterList()) {
-
https://github.com/sdkrystian updated
https://github.com/llvm/llvm-project/pull/80864
>From 570e25f19b428fb7d2936091726727f9633eec35 Mon Sep 17 00:00:00 2001
From: Krystian Stasiowski
Date: Tue, 6 Feb 2024 11:08:04 -0500
Subject: [PATCH 1/2] [Clang][Sema] Abbreviated function templates do not
@@ -9759,7 +9759,7 @@ Sema::ActOnFunctionDeclarator(Scope *S, Declarator &D,
DeclContext *DC,
SmallVector TemplateParamLists;
llvm::append_range(TemplateParamLists, TemplateParamListsRef);
if (TemplateParameterList *Invented = D.getInventedTemplateParameterList()) {
-
sdkrystian wrote:
Ping @Endilll @erichkeane
https://github.com/llvm/llvm-project/pull/80171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -145,6 +145,7 @@ Improvements to Clang's diagnostics
prints.
- Clang now diagnoses member template declarations with multiple declarators.
+- Clang now diagnoses friend declarations with an ``enum``
elaborated-type-specifier outside of C++98.
sdkrystian
@@ -380,7 +375,8 @@ class DeclSpec {
unsigned FS_noreturn_specified : 1;
// friend-specifier
- unsigned Friend_specified : 1;
+ unsigned FriendSpecified : 1;
sdkrystian wrote:
`LLVM_PREFERRED_TYPE` I believe
https://github.com/llvm/llvm-project/pull/80
@@ -145,6 +145,7 @@ Improvements to Clang's diagnostics
prints.
- Clang now diagnoses member template declarations with multiple declarators.
+- Clang now diagnoses friend declarations with an ``enum``
elaborated-type-specifier outside of C++98.
sdkrystian
@@ -1637,10 +1637,8 @@ def err_inline_namespace_std : Error<
def err_unexpected_friend : Error<
"friends can only be classes or functions">;
def ext_enum_friend : ExtWarn<
- "befriending enumeration type %0 is a C++11 extension">, InGroup;
-def warn_cxx98_compat_enum_friend
https://github.com/sdkrystian created
https://github.com/llvm/llvm-project/pull/80899
Per the approved resolution for
[CWG2847](https://cplusplus.github.io/CWG/issues/2847.html), [temp.expl.spec]
p8 will state:
> An explicit specialization shall not have a trailing _requires-clause_ unless
>
@@ -1637,10 +1637,8 @@ def err_inline_namespace_std : Error<
def err_unexpected_friend : Error<
"friends can only be classes or functions">;
def ext_enum_friend : ExtWarn<
- "befriending enumeration type %0 is a C++11 extension">, InGroup;
-def warn_cxx98_compat_enum_friend
https://github.com/sdkrystian edited
https://github.com/llvm/llvm-project/pull/80171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -252,4 +252,14 @@ namespace dr2397 { // dr2397: 17
auto (*c)[5] = &a;
}
} // namespace dr2397
+
+// CWG2363 was closed as NAD, but its resolution does affirm that
+// a friend declaration cannot have an opaque-enumm-specifier.
+namespace dr2363 { // dr2363: yes
+struct
201 - 300 of 846 matches
Mail list logo