@@ -1511,6 +1511,43 @@ Attributes (N2335)
C2
``#embed`` (N3017)
C23 C89, C++
frederick-vs-ja wrote:
@Endilll I think it's ready now. Sorry for late replying again.
https://github.com/llvm/llvm-project/pull/68846
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/frederick-vs-ja updated
https://github.com/llvm/llvm-project/pull/68846
>From c38259bd70993a96a35ce4f94790e420847786e2 Mon Sep 17 00:00:00 2001
From: "A. Jiang"
Date: Sun, 23 Jun 2024 01:39:42 +0800
Subject: [PATCH] [Docs][Clang] DR status for C++23-era papers in
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/68846
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/95474
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -3300,6 +3308,11 @@ static bool HandleLValueComplexElement(EvalInfo ,
const Expr *E,
static bool evaluateVarDeclInit(EvalInfo , const Expr *E,
const VarDecl *VD, CallStackFrame *Frame,
unsigned Version,
@@ -1961,7 +1961,8 @@ namespace ConstexprConstructorRecovery {
namespace Lifetime {
void f() {
-constexpr int = n; // expected-error {{constant expression}}
expected-note {{use of reference outside its lifetime}} expected-warning {{not
yet bound to a value}}
+
frederick-vs-ja wrote:
IIUC this intrinsic is unrelated to assignment operators. Do you have any plan
for `__is_bitwise_assignable`, which should determine whether the assignment
operator equivalently copies the value representation, possibly modulo the
vptrs?
```C++
struct Cat {}; //
frederick-vs-ja wrote:
This PR should fix #54018.
https://github.com/llvm/llvm-project/pull/74775
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,57 @@
+// RUN: %clang_cc1 -DWIN -verify -std=c++23 -fsyntax-only %s
+// RUN: %clang_cc1 -verify -std=c++23 -fsyntax-only %s
+
+// expected-no-diagnostics
+
+
+#ifdef WIN
+#define INFINITY ((float)(1e+300 * 1e+300))
+#define NAN (-(float)(INFINITY * 0.0F))
+#else
@@ -8340,8 +8340,17 @@ void Sema::checkInitializerLifetime(const
InitializedEntity ,
<< Entity.getType()->isReferenceType() << CLE->getInitializer() <<
2
<< DiagRange;
} else {
-Diag(DiagLoc, diag::warn_ret_local_temp_addr_ref)
-
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/89942
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/89942
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,18 @@
+// RUN: %clang_cc1 -std=c++26 -fsyntax-only -verify %s
+
+auto&& f1() {
+ return 42; // expected-error{{returning reference to local temporary object}}
+}
+const double& f2() {
+ static int x = 42;
+ return x; // expected-error{{returning reference to local
@@ -8340,8 +8340,17 @@ void Sema::checkInitializerLifetime(const
InitializedEntity ,
<< Entity.getType()->isReferenceType() << CLE->getInitializer() <<
2
<< DiagRange;
} else {
-Diag(DiagLoc, diag::warn_ret_local_temp_addr_ref)
-
@@ -2922,7 +2922,7 @@ static bool handleFloatFloatBinOp(EvalInfo , const
BinaryOperator *E,
// If during the evaluation of an expression, the result is not
// mathematically defined [...], the behavior is undefined.
// FIXME: C++ rules require us to not conform to
frederick-vs-ja wrote:
> But fails on Windows.
This seems because of that MS UCRT's complex math functions are non-conforming.
I _guess_ they could work if we write the following before including UCRT's
``.
```C
#define _C_COMPLEX_T
typedef double _Complex _C_double_complex;
typedef float
frederick-vs-ja wrote:
> This does something both useful and correct with `-fno-strict-aliasing`.
I'm not sure whether an instrinsic is even needed with `-fno-strict-aliasing`.
IIUC `std::start_lifetime_as` mainly tells the compiler that the types of data
in the storage can be changed
@@ -1386,9 +1386,19 @@ inline _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto)
apply(_Fn&& __f, _Tuple&&
std::forward<_Tuple>(__t),
typename
__make_tuple_indices>>::type{}))
+#if _LIBCPP_STD_VER >= 20
template
inline _LIBCPP_HIDE_FROM_ABI constexpr _Tp
frederick-vs-ja wrote:
[This page](https://clang.llvm.org/cxx_status.html) still refers to
[P2266R1](https://wg21.link/p2266r1) but the approved revision is
[P2266R3](https://wg21.link/p2266r3). Should we fix the citation in this PR or
another?
https://github.com/llvm/llvm-project/pull/84228
frederick-vs-ja wrote:
Reported 2 bugs for MSVC. (The first also affects standard cv-qualifiers.)
-
https://developercommunity.visualstudio.com/t/cv-qualifiers-and-__restrict-in-the-temp/10609457
-
https://developercommunity.visualstudio.com/t/__restrict-on-non-static-member-function/10609449
@@ -896,6 +896,12 @@ def Launder : Builtin {
let Prototype = "void*(void*)";
}
+def StartObjectLifeTime : Builtin {
+ let Spellings = ["__builtin_start_object_lifetime"];
frederick-vs-ja wrote:
IMO if the intent of this intrinsic is to handle polymorphic
frederick-vs-ja wrote:
> * with `-fstrict-vtable-pointers` flag, we update the vtpr assumption
> correctly (mark the load/store vptr with appropriate invariant group
> intrinsics) to prevent incorrect vptr load folding;
I _guess_ we want a variant of this intrinsic which doesn't affect
@@ -1558,6 +1558,89 @@ void is_standard_layout()
int t71[F(__is_standard_layout(HasEmptyIndirectBaseAsSecondUnionMember))];
}
+struct CStruct2 {
+ int one;
+ int two;
+};
+
+struct CEmptyStruct2 {};
+
+struct CppEmptyStruct2 : CStruct2 {};
+struct CppStructStandard2 :
@@ -598,3 +600,27 @@ namespace B {
}
void g(B::X x) { A::f(x); }
}
+
+namespace static_operator {
+#if __cplusplus >= 201703L
frederick-vs-ja wrote:
> No way to modify things in a C++11/14 constexpr function (`++x` is not a
> constant expression), so no way
frederick-vs-ja wrote:
@Endilll Oh, I'm sorry for late replying. I wasn't wating for anybody and think
this can be merged.
https://github.com/llvm/llvm-project/pull/68846
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
@@ -598,3 +600,27 @@ namespace B {
}
void g(B::X x) { A::f(x); }
}
+
+namespace static_operator {
+#if __cplusplus >= 201703L
frederick-vs-ja wrote:
Why C++17?
https://github.com/llvm/llvm-project/pull/78356
___
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/78356
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/frederick-vs-ja commented:
It seems that more things are being done #68485. Have you double checked that
PR?
https://github.com/llvm/llvm-project/pull/78356
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
frederick-vs-ja wrote:
> Should this be a SFINAE-able error before C++23? (It isn't currently)
I believe this should (in C++11 and later modes).
https://github.com/llvm/llvm-project/pull/78112
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/76447
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1273,6 +1293,22 @@ public:
__impl_.__swap(__that.__impl_);
}
+# if _LIBCPP_STD_VER >= 26
+ // [variant.visit], visitation
+
+ template
frederick-vs-ja wrote:
Would it be better to use a special tag type like this
```C++
struct
https://github.com/frederick-vs-ja updated
https://github.com/llvm/llvm-project/pull/68846
>From 9ef23f11f52735976a05080227bb880af3b9cbb6 Mon Sep 17 00:00:00 2001
From: "A. Jiang"
Date: Tue, 17 Oct 2023 10:41:18 +0800
Subject: [PATCH] [Docs][Clang] DR status in cxx_status.html
---
https://github.com/frederick-vs-ja updated
https://github.com/llvm/llvm-project/pull/68846
>From b2ec5be2a9eb80a4aeaf329ea4aed727b36501a1 Mon Sep 17 00:00:00 2001
From: "A. Jiang"
Date: Tue, 17 Oct 2023 10:41:18 +0800
Subject: [PATCH] [Docs][Clang] DR status in cxx_status.html
---
https://github.com/frederick-vs-ja updated
https://github.com/llvm/llvm-project/pull/68846
>From 40dca93d3e1f339f3e756e54687ea5506b3d6f2e Mon Sep 17 00:00:00 2001
From: "A. Jiang"
Date: Tue, 17 Oct 2023 10:41:18 +0800
Subject: [PATCH] [Docs][Clang] DR status in cxx_status.html
---
https://github.com/frederick-vs-ja updated
https://github.com/llvm/llvm-project/pull/68846
>From 07007c384ee57a20ad1dd1b0422c93152bb7f18e Mon Sep 17 00:00:00 2001
From: "A. Jiang"
Date: Tue, 17 Oct 2023 10:41:18 +0800
Subject: [PATCH] [Docs][Clang] DR status in cxx_status.html
---
https://github.com/frederick-vs-ja edited
https://github.com/llvm/llvm-project/pull/68846
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
frederick-vs-ja wrote:
@Endilll Thanks for notification! P2280 was already handled, while P2156 was
previously missed.
@cor3ntin I've add the DR status to P2156R1 and force-pushed.
https://github.com/llvm/llvm-project/pull/68846
___
cfe-commits
https://github.com/frederick-vs-ja updated
https://github.com/llvm/llvm-project/pull/68846
>From 00dec85aabcbd2e93fa80aed7b21f7ce02aab589 Mon Sep 17 00:00:00 2001
From: "A. Jiang"
Date: Tue, 17 Oct 2023 10:41:18 +0800
Subject: [PATCH] [Docs][Clang] DR status in cxx_status.html
---
https://github.com/frederick-vs-ja created
https://github.com/llvm/llvm-project/pull/68846
I'm unsure whether [P2460R2](https://wg21.link/p2460r2) should be listed in the
page. The paper seemingly requires no changes.
### References
- [N4891](https://wg21.link/n4891)
-
frederick-vs-ja wrote:
It seems that we should remove this block because it turns out that
`ranges::clamp` needs double moves under some circumstances.
Author: yunlian
Date: Mon Jun 25 16:05:27 2018
New Revision: 335546
URL: http://llvm.org/viewvc/llvm-project?rev=335546=rev
Log:
Add an option to support debug fission on implicit ThinLTO.
Summary:
This adds an option -gsplit-dwarf=. LLVM can create .dwo files in the
given directory
during the
Author: jtony
Date: Wed Jun 14 12:23:43 2017
New Revision: 305401
URL: http://llvm.org/viewvc/llvm-project?rev=305401=rev
Log:
[PPC] Enhance altivec conversion function macros implementation.
Add checking for the second parameter of altivec conversion builtin to make sure
it is compile-time
Author: jtony
Date: Wed May 24 13:12:11 2017
New Revision: 303786
URL: http://llvm.org/viewvc/llvm-project?rev=303786=rev
Log:
Fix one test case faiulre in commit 303766.
It is clean when I build boostrap and run make checkall on my machine, I guess
it could be I only build bootstrap with
Author: jtony
Date: Wed Jan 11 14:59:42 2017
New Revision: 291702
URL: http://llvm.org/viewvc/llvm-project?rev=291702=rev
Log:
[PowerPC] Fix the wrong implementation of builtin vec_rlnm.
Modified:
cfe/trunk/lib/Headers/altivec.h
cfe/trunk/test/CodeGen/builtins-ppc-p9vector.c
Modified:
jtony created this revision.
jtony added reviewers: nemanjai, sfertile, syzaara, lei, kbarton, amehsan.
jtony added subscribers: llvm-commits, cfe-commits, echristo.
This patch implements all the overloads for vec_xl_be and vec_xst_be. On BE,
they behaves exactly the same with vec_xl and vec_xst,
jtony created this revision.
jtony added reviewers: nemanjai, amehsan, kbarton, sfertile, syzaara, lei.
jtony added subscribers: cfe-commits, echristo, llvm-commits.
This patch implements all the overloads for vec_xl_be and vec_xst_be. On BE,
they behaves exactly the same with vec_xl and vec_xst,
Author: jtony
Date: Thu Nov 10 08:39:56 2016
New Revision: 286455
URL: http://llvm.org/viewvc/llvm-project?rev=286455=rev
Log:
[PowerPC] Implement plain VSX load/store builtins.
Implement all the different 24 overloads for vec_xl and vec_xst.
Modified:
cfe/trunk/lib/Headers/altivec.h
jtony updated this revision to Diff 77190.
jtony added a comment.
Add -U99 option to git diff to show context for this patch.
https://reviews.llvm.org/D26282
Files:
lib/Headers/altivec.h
test/CodeGen/builtins-ppc-altivec.c
test/CodeGen/builtins-ppc-quadword.c
Author: jtony
Date: Mon Nov 7 22:15:45 2016
New Revision: 286205
URL: http://llvm.org/viewvc/llvm-project?rev=286205=rev
Log:
[PowerPC] Implement remaining vector comparison builtins.
vector bool char vec_cmpeq (vector bool char, vector bool char);
vector bool int vec_cmpeq (vector bool int,
jtony added a comment.
A very small nit, the bracket does not match in the title, do you mean [PPC]
instead of [PPC}?
Repository:
rL LLVM
https://reviews.llvm.org/D26271
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
jtony updated this revision to Diff 77036.
jtony added a comment.
I migrated the commit from the old anonymous repository to the new jtony
repository to prepare for committing upstream (use git svn dcommit). Should
not have any difference with the previous patches, update it just in case.
jtony updated this revision to Diff 77037.
jtony added a comment.
I also migrated this commit from the old anonymous repository to the new jtony
repository to prepare for committing upstream (use git svn dcommit). Should not
have any difference with the previous patch, update it just in case.
jtony updated this revision to Diff 76862.
jtony marked 2 inline comments as done.
jtony added a comment.
Fix a few format and layout issues.
Format: clang-format is not always correct, sometimes separate parameters in
different lines is better.
Layout: put the overloaded builtin functions in
jtony created this revision.
jtony added reviewers: nemanjai, amehsan, kbarton, sfertile, syzaara, lei.
jtony added subscribers: llvm-commits, cfe-commits, echristo.
Implement all the different 24 overloads for vec_xl and vec_xst.
Signatures:
vector signed char vec_xl (signed long long, signed
http://reviews.llvm.org/D14480
This tries to improve the compilation time of the test case in
https://llvm.org/bugs/show_bug.cgi?id=25416
The problem is that when trying to get the SrcLocInfo for asm, it
tries to get the SrcLoc for each
line inside the asm string. For each line, it goes through
56 matches
Mail list logo