https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/133613
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -16439,33 +16735,70 @@ CheckOperatorDeleteDeclaration(Sema &SemaRef,
FunctionDecl *FnDecl) {
return true;
auto *MD = dyn_cast(FnDecl);
+ auto ConstructDestroyingDeleteAddressType = [&]() {
+assert(MD);
+return SemaRef.Context.getCanonicalType(SemaRef.Context
@@ -1098,12 +1098,39 @@ static TypeSourceInfo
*getTypeSourceInfoForStdAlignValT(Sema &S,
return S.Context.getTrivialTypeSourceInfo(StdAlignValDecl);
}
+// When searching for custom allocators on the PromiseType we want to
+// warn that we will ignore type aware allocators.
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/132626
This reverts an earlier attempt (adb0d8ddceb143749c519d14b8b31b481071da77 and
50e5411e4247421fd606f0a206682fcdf0303ae3) to support these expansions,
which was limited to type arguments and which subverted the p
mizvekov wrote:
We can do a back port once the patch is settled, and it could wait until 20.2.
https://github.com/llvm/llvm-project/pull/134461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/134461
>From 9411de369476b24d56fbd495bcf4c76def2c4fe1 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Mon, 31 Mar 2025 17:19:18 -0300
Subject: [PATCH] [clang] fix partial ordering of NTTP packs
This fixes partia
mizvekov wrote:
Yeah, clang side unchanged.
The lldb changed stuff is trivial, I don't think it's worth waiting a long time
for lldb input.
https://github.com/llvm/llvm-project/pull/132234
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https
@@ -6837,64 +6846,55 @@ ExprResult
Sema::CheckTemplateArgument(NonTypeTemplateParmDecl *Param,
assert(!ParamType.hasQualifiers() &&
"non-type template parameter type cannot be qualified");
+ // If either the parameter has a dependent type or the argument is
+ //
@@ -13462,13 +13462,114 @@ static ElaboratedTypeKeyword
getCommonTypeKeyword(const T *X, const T *Y) {
: ElaboratedTypeKeyword::None;
}
+static NestedNameSpecifier *getCommonNNS(ASTContext &Ctx,
+
@@ -1098,12 +1098,39 @@ static TypeSourceInfo
*getTypeSourceInfoForStdAlignValT(Sema &S,
return S.Context.getTrivialTypeSourceInfo(StdAlignValDecl);
}
+// When searching for custom allocators on the PromiseType we want to
+// warn that we will ignore type aware allocators.
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/132626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
mizvekov wrote:
Clang does crash with one of the included test cases, if you try to actually
use the function: https://godbolt.org/z/e6e6Ehjoj
My reading is that using a static function with placeholder type before it has
been deduced is ill-formed, per https://eel.is/c++draft/dcl.spec.auto#ge
mizvekov wrote:
@fmayer this patch touches nowhere near where those backtraces indicate.
https://github.com/llvm/llvm-project/pull/130182 is a far more likely culprit.
https://github.com/llvm/llvm-project/pull/132748
___
cfe-commits mailing list
cfe-co
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes ,
=?utf-8?q?Théo?= De Magalhaes
Message-ID:
In-Reply-To:
mizvekov wrote:
mizvekov wrote:
@thurstond Well can you provide a more recent buildbot failure link where
https://github.com/llvm/llvm-project/pull/130182 is not on the list of possible
culpirits? Because the link @fmayer provided for sure included it.
https://github.com/llvm/llvm-project/pull/132748
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/134461
This fixes partial ordering of pack expansions of NTTPs, by procedding with the
check using the pattern of the NTTP through the rules of the non-pack case.
This also unifies almost all of the different version
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/132977
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
mizvekov wrote:
You mean crashes caused by this fix, or do you mean crashes not fixed by it?
In any case, I won't be available to revert anything until tomorrow.
You can go ahead and revert, but I am afraid it won't be straightforward.
https://github.com/llvm/llvm-project/pull/132317
_
mizvekov wrote:
If you do revert, please avoid reverting tests if possible.
https://github.com/llvm/llvm-project/pull/132317
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/132977
Fix crash when looking up associated namespaces for member pointers with an
unknown class, due to dependency.
It was a regression introduced in
https://github.com/llvm/llvm-project/pull/131965 and reported he
mizvekov wrote:
@alexfh thanks, this will be fixed here:
https://github.com/llvm/llvm-project/pull/132977
https://github.com/llvm/llvm-project/pull/132317
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/l
mizvekov wrote:
Since this fixes a regression recently introduced, which was picked up by
upstream users,
I will land this as soon as pre-commit checks are done.
https://github.com/llvm/llvm-project/pull/132977
___
cfe-commits mailing list
cfe-commits
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/133113
>From 322838fdee8b751582e90d34b367d7877ee1dbf7 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Wed, 26 Mar 2025 12:26:40 -0300
Subject: [PATCH] [clang] fix deduction of member pointers with dependent named
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/133113
>From d1831e84e62f5a100de193619cbfdf9a1d403674 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Wed, 26 Mar 2025 12:26:40 -0300
Subject: [PATCH] [clang] fix deduction of member pointers with dependent named
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/133113
This fixes a regression when interpreting a nested name specifier for deduction
purposes in member pointers.
This introduces a helper for fully translating a nested name specifier into a
type.
Other existing
mizvekov wrote:
@alexfh @rupprecht thanks, that was indeed a separate regression, and this will
be fixed here: https://github.com/llvm/llvm-project/pull/133113
https://github.com/llvm/llvm-project/pull/132317
___
cfe-commits mailing list
cfe-commits@l
mizvekov wrote:
Thanks, this will be fixed here:
https://github.com/llvm/llvm-project/pull/133113
https://github.com/llvm/llvm-project/pull/132401
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/133113
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/133113
>From 839a8fc708bad03c3c82a1916d70652ab3b17b5e Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Wed, 26 Mar 2025 12:26:40 -0300
Subject: [PATCH] [clang] fix deduction of member pointers with dependent named
mizvekov wrote:
@alexfh Are you sure the original crashes were due to
https://github.com/llvm/llvm-project/pull/132977 ?
Looking at the patch, it seems unlikely it could cause a crash in itself.
What I think happened is that your compilation proceeded further along and
encountered the other c
@@ -1650,6 +1665,23 @@ namespace {
return inherited::TransformTemplateArgument(Input, Output, Uneval);
}
+std::optional ComputeSizeOfPackExprWithoutSubstitution(
+ArrayRef PackArgs) {
+ // Don't do this when rewriting template parameters for CTAD:
+
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/133113
>From d1831e84e62f5a100de193619cbfdf9a1d403674 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Wed, 26 Mar 2025 12:26:40 -0300
Subject: [PATCH 1/2] [clang] fix deduction of member pointers with dependent
@@ -70,7 +70,14 @@ struct alignas(ConstraintAlignment) AtomicConstraint {
// We do not actually substitute the parameter mappings into the
// constraint expressions, therefore the constraint expressions are
// the originals, and comparing them will suffice.
-if
mizvekov wrote:
Note this was unrelated to another regression, as reported here:
https://github.com/llvm/llvm-project/pull/132317#issuecomment-2755417893
Since this fixes a regression which recently landed, I am going to go ahead and
merge, relying on post-commit review.
https://github.com/ll
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/133113
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -70,7 +70,14 @@ struct alignas(ConstraintAlignment) AtomicConstraint {
// We do not actually substitute the parameter mappings into the
// constraint expressions, therefore the constraint expressions are
// the originals, and comparing them will suffice.
-if
@@ -2572,7 +2572,7 @@ Decl *TemplateDeclInstantiator::VisitFunctionDecl(
// Friend function defined withing class template may stop being function
// definition during AST merges from different modules, in this case decl
// with function body should be used for instantiat
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/133343
Fixes a regression introduced in
https://github.com/llvm/llvm-project/pull/130537 and reported here
https://github.com/llvm/llvm-project/issues/133144
This fixes a crash in ASTStructuralEquivalence where the
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/133343
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/135119
This changes the TemplateArgument representation to hold a flag indicating
whether a template argument of expression type is supposed to be canonical or
not.
This gets one step closer to solving
https://gith
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/135119
>From 03801aef9b4f950940d33276095c14047da0a3e6 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Sat, 17 Sep 2022 18:07:28 +0200
Subject: [PATCH] [clang] Improved canonicalization for template specialization
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/135111
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -143,8 +143,8 @@ def note_constexpr_null_subobject : Note<
"access array element of|perform pointer arithmetic on|"
"access real component of|"
"access imaginary component of}0 null pointer">;
-def note_constexpr_null_callee : Note<
- "'%0' evaluates to a null functio
@@ -168,6 +168,8 @@ class TemplateArgument {
LLVM_PREFERRED_TYPE(bool)
unsigned IsDefaulted : 1;
uintptr_t V;
+LLVM_PREFERRED_TYPE(bool)
+unsigned IsCanonicalExpr : 1;
mizvekov wrote:
Yeah sure. Though it's not going to make a difference in
@@ -3250,8 +3251,7 @@ checkBuiltinTemplateIdType(Sema &SemaRef,
BuiltinTemplateDecl *BTD,
TemplateArgument NumArgsArg = Converted[2];
if (NumArgsArg.isDependent())
- return Context.getCanonicalTemplateSpecializationType(TemplateName(BTD),
-
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/135119
>From ee7360df51bdc8b0f9e9582d9cfa5ecd36a6df1d Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Sat, 17 Sep 2022 18:07:28 +0200
Subject: [PATCH] [clang] Improved canonicalization for template specialization
@@ -7379,6 +7379,14 @@ class RecoveryExpr final : public Expr,
friend class ASTStmtWriter;
};
+/// Insertion operator for diagnostics. This allows sending
+/// Expr into a diagnostic with <<.
+inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB,
+
@@ -11683,7 +11683,10 @@ static void DiagnoseIntInBoolContext(Sema &S, Expr *E)
{
S.Diag(ExprLoc, diag::warn_left_shift_always)
<< (Result.Val.getInt() != 0);
else if (E->getType()->isSignedIntegerType())
-S.Diag(ExprLoc, diag::warn_left_shift
@@ -1144,20 +1144,25 @@ FormatDiagnostic(const char *DiagStr, const char
*DiagEnd,
switch (Kind) {
// STRINGS
-case DiagnosticsEngine::ak_std_string: {
- const std::string &S = getArgStdStr(ArgNo);
- assert(ModifierLen == 0 && "No modifiers for
@@ -7379,6 +7379,14 @@ class RecoveryExpr final : public Expr,
friend class ASTStmtWriter;
};
+/// Insertion operator for diagnostics. This allows sending
+/// Expr into a diagnostic with <<.
+inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB,
+
mizvekov wrote:
I agree that if we can't guarantee it will be tail-called, this must be an
error.
must_tail is not an optimization.
In fact, LLVM by itself will already perform tail call optimizations, and
remove them when it would not be profitable in terms of execution cost.
The point of m
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/135067
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/135067
A NestedNameSpecifier of TypeSpec kind can be non-dependent even if its prefix
is dependent, when for example the prefix is an injected class type but the
type itself is a simple alias to a non-dependent type.
mizvekov wrote:
@alexfh the last one will be fixed here:
https://github.com/llvm/llvm-project/pull/135067
https://github.com/llvm/llvm-project/pull/133610
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/l
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/135067
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
mizvekov wrote:
@slackito this will be fixed here:
https://github.com/llvm/llvm-project/pull/135111
https://github.com/llvm/llvm-project/pull/133610
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinf
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/135111
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/135111
This fixes a regression introduced in
https://github.com/llvm/llvm-project/pull/133610#issuecomment-2787332042 which
was reported here
https://github.com/llvm/llvm-project/pull/133610#issuecomment-2787332042
mizvekov wrote:
@pranavk this test case is fixed by the same fix as for the first mangling
issue: https://github.com/llvm/llvm-project/pull/135111
https://github.com/llvm/llvm-project/pull/132748
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
@@ -690,6 +690,23 @@ SmallVector
TemplateParamsReferencedInTemplateArgumentList(
SemaRef.MarkUsedTemplateParameters(
DeducedArgs, TemplateParamsList->getDepth(), ReferencedTemplateParams);
+ auto MarkDefaultArgs = [&](auto *Param) {
+if (!Param || !Param->hasDefa
@@ -690,6 +690,23 @@ SmallVector
TemplateParamsReferencedInTemplateArgumentList(
SemaRef.MarkUsedTemplateParameters(
DeducedArgs, TemplateParamsList->getDepth(), ReferencedTemplateParams);
+ auto MarkDefaultArgs = [&](auto *Param) {
+if (!Param || !Param->hasDefa
@@ -18,19 +18,19 @@ int D = 1;
#pragma data_seg(".data")
int a = 1;
extern const Mutable mutable_custom_section;
-const Mutable mutable_custom_section; // expected-warning {{`#pragma
const_seg` for section ".my_const" will not apply to 'mutable_custom_section'
due to the pres
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/135119
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/135133
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/134461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/135133
>From e5422e4b48b64e695f5ae8c7502370db1be84d50 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Thu, 10 Apr 2025 02:52:36 -0300
Subject: [PATCH] [clang] implement printing of canonical template arguments of
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/132626
>From 471bef0599a56ee90c1f8e2f7505a7b0003433c2 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Sat, 22 Mar 2025 17:29:16 -0300
Subject: [PATCH 1/3] Revert "[Clang] Distinguish expanding-pack-in-place cases
@@ -16327,79 +16531,181 @@ static CanQualType RemoveAddressSpaceFromPtr(Sema
&SemaRef,
PtrTy->getPointeeType().getUnqualifiedType(), PtrQuals)));
}
-static inline bool
-CheckOperatorNewDeleteTypes(Sema &SemaRef, const FunctionDecl *FnDecl,
-C
@@ -16327,79 +16531,181 @@ static CanQualType RemoveAddressSpaceFromPtr(Sema
&SemaRef,
PtrTy->getPointeeType().getUnqualifiedType(), PtrQuals)));
}
-static inline bool
-CheckOperatorNewDeleteTypes(Sema &SemaRef, const FunctionDecl *FnDecl,
-C
@@ -9817,27 +9817,54 @@ def err_operator_new_delete_invalid_result_type : Error<
def err_operator_new_delete_dependent_result_type : Error<
"%0 cannot have a dependent return type; use %1 instead">;
def err_operator_new_delete_too_few_parameters : Error<
- "%0 must have at l
mizvekov wrote:
> > @alexfh should be fixed by #133613
>
>
>
> Thank you! The crash is resolved. Do you still need a reduced test case?
No worries, the tests included in PR already reproduce it.
https://github.com/llvm/llvm-project/pull/132401
___
@@ -7353,6 +7354,69 @@ void Sema::CheckCompletedCXXClass(Scope *S,
CXXRecordDecl *Record) {
else if (Record->hasAttr())
checkCUDADeviceBuiltinTextureClassTemplate(*this, Record);
}
+
+ llvm::SmallVector TypeAwareNewDecls;
+ llvm::SmallVector TypeAwareDeleteDecls;
@@ -16327,79 +16531,181 @@ static CanQualType RemoveAddressSpaceFromPtr(Sema
&SemaRef,
PtrTy->getPointeeType().getUnqualifiedType(), PtrQuals)));
}
-static inline bool
-CheckOperatorNewDeleteTypes(Sema &SemaRef, const FunctionDecl *FnDecl,
-C
@@ -1098,12 +1098,39 @@ static TypeSourceInfo
*getTypeSourceInfoForStdAlignValT(Sema &S,
return S.Context.getTrivialTypeSourceInfo(StdAlignValDecl);
}
+// When searching for custom allocators on the PromiseType we want to
+// warn that we will ignore type aware allocators.
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/132626
>From bbd2a588f79926323a29a3a70f061e4a2433bdc2 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Sat, 22 Mar 2025 17:29:16 -0300
Subject: [PATCH 1/3] Revert "[Clang] Distinguish expanding-pack-in-place cases
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/132748
>From b50ea7d744280bdfb97f0abaeb10d088d502e81a Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Sat, 22 Mar 2025 16:03:04 -0300
Subject: [PATCH 1/4] [clang] Track final substitution for
SubstTemplateTempla
Author: Matheus Izvekov
Date: 2025-04-01T21:06:38-03:00
New Revision: 2f25345670081f1ca460ea3f42a0585ef3f1e877
URL:
https://github.com/llvm/llvm-project/commit/2f25345670081f1ca460ea3f42a0585ef3f1e877
DIFF:
https://github.com/llvm/llvm-project/commit/2f25345670081f1ca460ea3f42a0585ef3f1e877.dif
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/132626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/133190
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov edited
https://github.com/llvm/llvm-project/pull/132748
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/133190
>From 4c3fe79695f8082f56f8403fbf1f9eb299bb4af2 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Wed, 26 Mar 2025 18:38:34 -0300
Subject: [PATCH] [clang] support pack expansions for trailing requires clauses
mizvekov wrote:
@rnk FYI this was reverted
https://github.com/llvm/llvm-project/pull/133545
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mizvekov approved this pull request.
LGTM, thanks for working on this.
Please add a release note before merging.
https://github.com/llvm/llvm-project/pull/133806
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.
mizvekov wrote:
Noted. Sorry I haven't responded yet, I have other priorities and it might take
a while before I get back to this patch.
https://github.com/llvm/llvm-project/pull/107942
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://l
mizvekov wrote:
Regarding the double const , I think this is not a type printer bug per se.
By indiscriminately adding a qualifier to a type, we can produce a type which
cannot be written, such as this const qualified array case. As such, we can
never do a good job printing these anyway.
Ther
mizvekov wrote:
The test for this should actually go in
`clang/test/SemaCXX/sugar-common-types.cpp`, following the style in the file.
One example test, without using constexpr: https://godbolt.org/z/8PGa4aTPx
```C++
enum class Z {};
using ConstInt = const int;
using ConstIntArray1 = ConstInt[1
Author: Matheus Izvekov
Date: 2025-04-08T15:10:33-03:00
New Revision: 11fdea984dc6777ba4f4b7e516c2938083b34ddb
URL:
https://github.com/llvm/llvm-project/commit/11fdea984dc6777ba4f4b7e516c2938083b34ddb
DIFF:
https://github.com/llvm/llvm-project/commit/11fdea984dc6777ba4f4b7e516c2938083b34ddb.dif
@@ -7379,6 +7379,14 @@ class RecoveryExpr final : public Expr,
friend class ASTStmtWriter;
};
+/// Insertion operator for diagnostics. This allows sending
+/// Expr into a diagnostic with <<.
+inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB,
+
mizvekov wrote:
Ack, I see. I will try to reduce this example further.
It's not likely I will have a solution in less than 2 hours this time due to
personal commitments, so feel free to revert if this is blocking you.
In any case I will pick this up tomorrow.
https://github.com/llvm/llvm-proj
https://github.com/mizvekov updated
https://github.com/llvm/llvm-project/pull/134693
>From 302fc36812e5ddcbf856732d65ba7516e05ca1e3 Mon Sep 17 00:00:00 2001
From: Matheus Izvekov
Date: Mon, 7 Apr 2025 13:08:52 -0300
Subject: [PATCH] [clang] fix diagnostic printing of expressions ignoring
LangO
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/134560
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Matheus Izvekov
Date: 2025-04-06T23:42:27-03:00
New Revision: 6ce0fd7f74502a75120bef43f12f56e3a5d80dfd
URL:
https://github.com/llvm/llvm-project/commit/6ce0fd7f74502a75120bef43f12f56e3a5d80dfd
DIFF:
https://github.com/llvm/llvm-project/commit/6ce0fd7f74502a75120bef43f12f56e3a5d80dfd.dif
https://github.com/mizvekov closed
https://github.com/llvm/llvm-project/pull/135312
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -690,6 +690,23 @@ SmallVector
TemplateParamsReferencedInTemplateArgumentList(
SemaRef.MarkUsedTemplateParameters(
DeducedArgs, TemplateParamsList->getDepth(), ReferencedTemplateParams);
+ auto MarkDefaultArgs = [&](auto *Param) {
+if (!Param || !Param->hasDefa
mizvekov wrote:
Sure, but I'd have to resist the urge to fix them, so that they can end up as
test cases. They probably wouldn't survive long either way.
For example, I grepped the source tree for diagnostics where we are emitting
'type-parameter-X-X', and where this is happening not because t
mizvekov wrote:
Adding lldb back to the ci script, as otherwise lldb cannot be tested locally.
https://github.com/llvm/llvm-project/pull/135414
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-
https://github.com/mizvekov created
https://github.com/llvm/llvm-project/pull/135414
This changes the TemplateArgument representation to hold a flag indicating
whether a tempalte argument of expression type is supposed to be canonical or
not.
This gets one step closer to solving
https://gith
mizvekov wrote:
Yeah I see, so this was actually missed previously in another node,
`SubstNonTypeTemplateParmPackExpr`, which during substitution propagates this
flag to `SubstNonTypeTemplateParmExpr`.
https://github.com/llvm/llvm-project/pull/134560
___
mizvekov wrote:
It's possible but it's not too closely related.
I will post a patch for this one soon, and then we can try again that one and I
will take a fresh look on the serialization code.
https://github.com/llvm/llvm-project/pull/134560
___
cfe
mizvekov wrote:
This will be fixed here: https://github.com/llvm/llvm-project/pull/135428
https://github.com/llvm/llvm-project/pull/134560
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi
1201 - 1300 of 1692 matches
Mail list logo