@@ -2612,44 +2671,309 @@ struct ConvertConstructorToDeductionGuideTransform {
SemaRef.CurrentInstantiationScope->InstantiatedLocal(OldParam, NewParam);
return NewParam;
}
+};
- FunctionTemplateDecl *buildDeductionGuide(
- TemplateParameterList *TemplateParams,
erichkeane wrote:
> @cor3ntin, @erichkeane, thanks for all review comments. I'm not sure you have
> reviewed the whole patch. My feeling is that the core part
> (`DeclareImplicitDeductionGuidesForTypeAlias`) may not have received
> sufficient reviews. It would be great if you can take a closer
HoBoIs wrote:
> I don't think checking for c++20 is useful because rewritten candidates are a
> c++20- feature anyway
Yes, but the resolution of the DR also talks about the reference type of the
object parameter. (If I apply the patch retroactively the code will get
simpler.)
https://github.
Botond =?utf-8?q?István_Horváth?=,Botond Istvan Horvath
,Botond Istvan Horvath
,Botond Istvan Horvath
,Botond Istvan Horvath
,Botond Istvan Horvath
,Botond Istvan Horvath
Message-ID:
In-Reply-To:
erichkeane wrote:
Yeah, agree with @cor3ntin here. I don't think this needs the C++20 check
https://github.com/HoBoIs updated
https://github.com/llvm/llvm-project/pull/83279
From 68200ecf3267d1b3940fa73c25c50ee706932a98 Mon Sep 17 00:00:00 2001
From: Botond Istvan Horvath
Date: Wed, 28 Feb 2024 13:09:15 +0100
Subject: [PATCH 1/9] Bugfix for choosing the more specialized overload
Ther
https://github.com/arsenm commented:
I think we would be better off teaching an IR optimizer pass to recognize the
divide pattern and remap it to the load from the location, rather than forcing
the complexity into every frontend
https://github.com/llvm/llvm-project/pull/83927
https://github.com/arsenm edited https://github.com/llvm/llvm-project/pull/83927
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
> Do you expect to make any changes to type streaming?
I don't expect to do that explicitly. The number of types deserialized can be
decreased naturally after we avoid emitting declarations during the writing.
https://github.com/llvm/llvm-project/pull/75894
__
https://github.com/labrinea updated
https://github.com/llvm/llvm-project/pull/83887
>From f11c97d7f7f67edaf6de4390bcceb13dfea376a1 Mon Sep 17 00:00:00 2001
From: Alexandros Lamprineas
Date: Mon, 4 Mar 2024 18:12:22 +
Subject: [PATCH] [FMV] Allow target version definitions in any order.
Thi
JivanH wrote:
@topperc
@wangpc-pp
@dtcxzyw
REMIND:
Hi. Could you please review my patch?
https://github.com/llvm/llvm-project/pull/79971
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co
steakhal wrote:
I'm fine with the change.
https://github.com/llvm/llvm-project/pull/83985
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -8480,6 +8480,54 @@ class LValueExprEvaluator
};
} // end anonymous namespace
+/// Get an lvalue to a field of a lambda's closure type.
+static bool GetLambdaCaptureAsLValue(EvalInfo &Info, const Expr *E,
+ LValue &Result, const CXXMethod
=?utf-8?q?Balázs_Kéri?=
Message-ID:
In-Reply-To:
@@ -3020,44 +3020,82 @@ Check for misuses of stream APIs. Check for misuses of
stream APIs: ``fopen, fcl
alpha.unix.Stream (C)
"
-Check stream handling functions: ``fopen, tmpfile, fclose, fread, fwrite,
https://github.com/jhuber6 updated
https://github.com/llvm/llvm-project/pull/83906
>From 1cb734f3df298a34d76f7c9ee059dff84ba50c10 Mon Sep 17 00:00:00 2001
From: Joseph Huber
Date: Fri, 1 Mar 2024 15:28:32 -0600
Subject: [PATCH] [AMDGPU] Implement 'llvm.get.fpenv' and 'llvm.set.fpenv'
Summary:
@@ -839,6 +839,18 @@ unsigned test_wavefrontsize() {
return __builtin_amdgcn_wavefrontsize();
}
+// CHECK-LABEL test_get_fpenv(
jhuber6 wrote:
Added a sema check.
https://github.com/llvm/llvm-project/pull/83906
_
https://github.com/Sirraide updated
https://github.com/llvm/llvm-project/pull/83063
>From 5418bec794ad1df54f49a1c8d317a75d56290239 Mon Sep 17 00:00:00 2001
From: Sirraide
Date: Mon, 26 Feb 2024 19:53:42 +0100
Subject: [PATCH 1/3] [Clang] [Sema] Remove incorrect int-to-complex-float
conversion
@@ -1114,8 +1114,6 @@ static bool handleIntegerToComplexFloatConversion(Sema
&S, ExprResult &IntExpr,
if (IntTy->isIntegerType()) {
QualType fpTy = ComplexTy->castAs()->getElementType();
IntExpr = S.ImpCastExprToType(IntExpr.get(), fpTy, CK_IntegralToFloating);
-
@@ -139,6 +139,36 @@ kernel void
reqd_work_group_size_32_2_1_flat_work_group_size_16_128() {
// CHECK: define{{.*}} amdgpu_kernel void
@reqd_work_group_size_32_2_1_flat_work_group_size_16_128()
[[FLAT_WORK_GROUP_SIZE_16_128:#[0-9]+]]
}
+__attribute__((amdgpu_max_num_work_gr
@@ -194,3 +204,105 @@ __global__ void non_cexpr_waves_per_eu_2() {}
// expected-error@+1{{'amdgpu_waves_per_eu' attribute requires parameter 1 to
be an integer constant}}
__attribute__((amdgpu_waves_per_eu(2, ipow2(2
__global__ void non_cexpr_waves_per_eu_2_4() {}
+
+// ex
@@ -0,0 +1,77 @@
+; RUN: not llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 < %s 2>&1 | FileCheck
--check-prefix=ERROR %s
+
+; ERROR: error: can't parse integer attribute -1 in amdgpu-max-num-work-groups
+define amdgpu_kernel void @empty_max_num_work_groups_neg_num1() #21 {
+entry:
https://github.com/mzyKi updated https://github.com/llvm/llvm-project/pull/83585
>From 6a9f7a996c127462fa787a2626bc0676d4e04ff3 Mon Sep 17 00:00:00 2001
From: miaozhiyuan
Date: Fri, 1 Mar 2024 22:45:20 +0800
Subject: [PATCH 1/2] [clang][ExprEngineCXX] Fix crash on dereference invalid
return val
@@ -0,0 +1,143 @@
+// RUN: %clang_cc1 %s -O0 -emit-llvm -triple x86_64-unknown-unknown -o - |
FileCheck %s --check-prefix=X86
+
+// Check that for 'F _Complex + int' (F = real floating-point type), we emit an
+// implicit cast from 'int' to 'F', but NOT to 'F _Complex' (i.e. that
https://github.com/mzyKi updated https://github.com/llvm/llvm-project/pull/83585
>From b925806e216dcdbb359852ba6fef59268f6d5fe5 Mon Sep 17 00:00:00 2001
From: miaozhiyuan
Date: Fri, 1 Mar 2024 22:45:20 +0800
Subject: [PATCH 1/2] [clang][ExprEngineCXX] Fix crash on dereference invalid
return val
Fznamznon wrote:
So, I've spent some time on it, and it turns out that because of current design
choices supporting the whole feature in older language modes and not loosing
any warnings/errors happens to be a much more significant change.
For example, due to the fact that constexprness of cons
@@ -0,0 +1,15 @@
+// RUN: %clang_analyze_cc1 -analyzer-checker=core.DivideZero -std=c++23
-verify %s
+// expected-no-diagnostics
+
+struct S
+{
+constexpr auto operator==(this auto, S)
+{
+return true;
+}
+};
+
+int main()
+{
+return S {} == S {};
+}
-
@@ -9108,7 +9123,8 @@ bool Sema::CheckExplicitlyDefaultedComparison(Scope *S,
FunctionDecl *FD,
// declaration, it is implicitly considered to be constexpr.
// FIXME: Only applying this to the first declaration seems problematic, as
// simple reorderings can affect the
@@ -5588,6 +5588,14 @@ bool Sema::CheckRISCVBuiltinFunctionCall(const
TargetInfo &TI,
// Check if rnum is in [0, 10]
case RISCV::BI__builtin_riscv_aes64ks1i:
return SemaBuiltinConstantArgRange(TheCall, 1, 0, 10);
+ // Check if n of mop.r.[n] is in [0, 31]
+ case RISC
@@ -89,5 +89,13 @@ TARGET_BUILTIN(__builtin_riscv_sm3p1, "UiUi", "nc", "zksh")
TARGET_BUILTIN(__builtin_riscv_ntl_load, "v.", "t", "zihintntl")
TARGET_BUILTIN(__builtin_riscv_ntl_store, "v.", "t", "zihintntl")
+// Zimop extension
wangpc-pp wrote:
You may need
@@ -356,14 +356,7 @@ C++23 implementation status
Relaxing some constexpr restrictions
https://wg21.link/P2448R2";>P2448R2
-
-Clang 17 (Partial)
- We do not support outside of defaulted special memeber functions the
change that constexpr f
mzyKi wrote:
> > Thanks for your help very much.I only fixed the symptoms of this bug
> > without spending much time to find the root cause. I feel ashamed.
>
> There is nothing to be ashamed of. You have spent the time to debug the
> crash, and localize the use of non-engaged optional, this i
https://github.com/mzyKi edited https://github.com/llvm/llvm-project/pull/83585
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/mzyKi edited https://github.com/llvm/llvm-project/pull/83585
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,15 @@
+// RUN: %clang_analyze_cc1 -analyzer-checker=core.DivideZero -std=c++23
-verify %s
mzyKi wrote:
Thanks for your suggestions. I fixed it in
https://github.com/llvm/llvm-project/commit/5ac52a8fda78fd8308b95c244a9a4b46d9d8121a
https://github.com
@@ -6826,6 +6826,10 @@ def warn_floatingpoint_eq : Warning<
"comparing floating point with == or != is unsafe">,
InGroup>, DefaultIgnore;
+def warn_fenv_access : Warning<
+ "floating point environment access without #pragma STDC FENV_ACCESS set ON">,
+ InGroup>;
https://github.com/cyndyishida updated
https://github.com/llvm/llvm-project/pull/83952
>From 580af4d537446637d44af03c147750af54eca05b Mon Sep 17 00:00:00 2001
From: Cyndy Ishida
Date: Mon, 4 Mar 2024 10:46:18 -0800
Subject: [PATCH] [InstallAPI] Collect global functions
* Include whether functi
ldionne wrote:
> > So the intent of the current ordering was to allow creating a toolchain by
> > placing the libc++ headers alongside Clang, as is typically done (and
> > exceptionally not done on Apple platforms). On Apple platforms, you
> > basically always specify a sysroot, either explici
@@ -414,20 +415,42 @@ NarrowingKind
StandardConversionSequence::getNarrowingKind(
if (Initializer->isValueDependent())
return NK_Dependent_Narrowing;
- if (Initializer->isCXX11ConstantExpr(Ctx, &ConstantValue)) {
+ Expr::EvalResult R;
+ if ((Ctx.g
https://github.com/Sirraide edited
https://github.com/llvm/llvm-project/pull/84014
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Sirraide requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/84014
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -463,8 +463,72 @@ void ctor_tests() {
constexpr SL global_sl = SL::current();
static_assert(is_equal(global_sl.function(), ""));
+template
+class TestBI {
+public:
+ TestBI() {
+#ifdef MS
+ static_assert(is_equal(__FUNCTION__, "test_func::TestBI::TestBI"));
+ sta
@@ -463,8 +463,72 @@ void ctor_tests() {
constexpr SL global_sl = SL::current();
static_assert(is_equal(global_sl.function(), ""));
+template
+class TestBI {
+public:
+ TestBI() {
+#ifdef MS
+ static_assert(is_equal(__FUNCTION__, "test_func::TestBI::TestBI"));
+ sta
@@ -721,10 +722,17 @@ std::string
PredefinedExpr::ComputeName(PredefinedIdentKind IK,
return std::string(Out.str());
}
if (const FunctionDecl *FD = dyn_cast(CurrentDecl)) {
-if (IK != PredefinedIdentKind::PrettyFunction &&
-IK != PredefinedIdentKind::Pretty
@@ -74,9 +79,14 @@ struct A {
clang_analyzer_dump(__func__);
clang_analyzer_dump(__FUNCTION__);
clang_analyzer_dump(__PRETTY_FUNCTION__);
-// expected-warning@-3 {{&Element{"~A",0 S64b,char}}}
-// expected-warning@-3 {{&Element{"~A",0 S64b,char}}}
-// ex
@@ -2260,10 +2271,15 @@ printTo(raw_ostream &OS, ArrayRef Args, const
PrintingPolicy &Policy,
} else {
if (!FirstArg)
OS << Comma;
- // Tries to print the argument with location info if exists.
- printArgument(Arg, Policy, ArgOS,
-
@@ -752,6 +760,8 @@ std::string PredefinedExpr::ComputeName(PredefinedIdentKind
IK,
PrintingPolicy Policy(Context.getLangOpts());
PrettyCallbacks PrettyCB(Context.getLangOpts());
Policy.Callbacks = &PrettyCB;
+if (IK == PredefinedIdentKind::Function && ForceEla
@@ -463,8 +463,72 @@ void ctor_tests() {
constexpr SL global_sl = SL::current();
static_assert(is_equal(global_sl.function(), ""));
+template
+class TestBI {
+public:
+ TestBI() {
+#ifdef MS
+ static_assert(is_equal(__FUNCTION__, "test_func::TestBI::TestBI"));
+ sta
@@ -721,10 +722,17 @@ std::string
PredefinedExpr::ComputeName(PredefinedIdentKind IK,
return std::string(Out.str());
}
if (const FunctionDecl *FD = dyn_cast(CurrentDecl)) {
-if (IK != PredefinedIdentKind::PrettyFunction &&
-IK != PredefinedIdentKind::Pretty
501 - 547 of 547 matches
Mail list logo