This patch fixes a bug in which if pragma Restrictions
(No_Stream_Optimizations) is in effect, it is ignored for T'Class'Input.
Revision 251886 was causing the compiler to bypass
No_Stream_Optimizations.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-05 Bob Duff
gcc/ada/
Calls to local subprograms in GNATprove may be inlined in some case, but
it should not be the case inside quantified expressions which are
handled as expressions inside GNATprove. Because quantified expressions
are only preanalayzed, the detection of the impossible inlining was not
performed. Now
This patch suppresses the generation of a predicate check when the
expression is a formal IN parameter of a subprogram S. If the check is
being applied to the actual in a call, the call is either in the body of
S, or in an aspect specfication for S, e.g. a precondition, In both
cases the check is r
This patch fixes a spurious error on a record aggregate for a variant
record when a choice in the aggregate is given by a subtype with a
static predicate. The same expansion mechanism for such a variant, used
in case statements, must be used here as well.
Tested on x86_64-pc-linux-gnu, committed o
This patch fixes a bug where if a function is build-in-place, and is
exported, and contains an extended_return_statement whose object is
initialized with another build-in-place function call, then the compiler
will crash.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-05 Bob Duff
g
This patch introduces several changes to the new elaboration order
mechanism:
* The library graph can now discover, store, and organize the various
cycles it contains.
* The elaboration order mechanism can now diagnose one or all cycles
within the library graph. Diagnostics consist of
This patch adds an explicit range check on an assignment to a component
of a bit-packed array, when the index type of the array is an
enumeration type with a non-standard representation,
Executing the following:
gnatmake -f -gnata -q main
./main
must yield:
1 is invalid
4097 is inv
This patch modifies the generation of task deallocation code to examine
the underlying type for task components.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-05 Hristian Kirtchev
gcc/ada/
* exp_ch7.adb (Cleanup_Record): Use the underlying type when
checking for c
Remove support added for CodePeer (which was never enabled by default;
it was controlled by the -gnatd.K option) for generation of SCIL
"contract-only" subprogram bodies. These were intended for use when a
subprogram's "real" body is unavailable but the subprogram spec has
pre/post-conditions speci
Tools like GNATprove built as GNAT backends rely on adabkend.adb to
handle generic switches like the optimisation switches -Oxxx.
This patch adds support for -Og and -Ofast that was missing.
There is no impact on compilation.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-05 Yannick
This patch fixes a "Compilation abandoned" message in a compiler built
with assertions, or a compiler loop otherwise, when an accept statement
contains an illegal accept statement for the same entry.
Compiling accept_in_accept.adb must yield:
accept_in_accept.adb:12:13:
duplicate accept
This fixes an issue introduced in Ada 2012 for calls to functions taking
an In/Out parameter and for which the actual is the component of a
packed array. In this case, the front-end needs to create a temporary
for the actual, initialize it before the call and assign it back after
it, because opera
For an anonymous allocator whose type is that of a stand-alone object of
an anonymous access-to-object type, the accessibility level is that of
the declaration of the stand-alone object; however it was incorrectly
computed as being library level compiling under -gnat12 mode.
Tested on x86_64-pc-li
This change removes the warnings returned when using Ada.Text_IO library
in SPARK. An abstract state and global contracts were added to modelize
the action of Text_IO procedures and function on the memory and the
files.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-05 Joffrey Huguet
This patch includes delay statements in the set of control flow
statements since their expressions may have side effects, which in turn
may affect an infinite recursion.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-05 Hristian Kirtchev
gcc/ada/
* sem_res.adb (Is_Control_
This patch fixes an issue whereby anonymous access result types were
treated as having the same accessibility level as typed results instead
of having the level determined by the "master of the call" as per RM
3.10.2 (10).
-- Source --
-- main.adb
with Pack_12; use Pac
This patch reimplements the detection of trivial infinite recursion to
remove the implicit assumptions concenring the structure and contents of
the enclosing subprogram statements.
-- Source --
-- infinite.adb
procedure Infinite with SPARK_Mode is
function Func_1 (V
This patch introduces several changes to the new elaboration order
mechanism:
* Instantiations processed in the context of invocation graph
encoding now yield a relation which is later transformed into an
invocation edge. This ensures that the unit where the instantiation
resides
While testing the fix for PR91068, I hit an rtl checking failure
while building newlib. mips_split_move was decomposing an address that
happened to be symbolic and then tried to access the REGNO of the base
register field, which wasn't initialised but which by chance pointed to
valid memory.
Test
PR91068 is a case in which we have (ignoring non-LRA alternatives):
[(set (match_operand:SI 0 "register_operand" "=l,d?")
(plus:SI (mult:SI (match_operand:SI 1 "register_operand" "d,d")
(match_operand:SI 2 "register_operand" "d,d"))
(match_opera
Hi,
this patch adds early exit into nonoverlapping_component_refs_since_match_p
so we do not try to parse the access paths when there is obviously nothing to
do.
It also improves statistics byt not accounting the early exit as a querry
and also to account cases we found both paths to be matching (
On Thu, 4 Jul 2019 at 23:46, Jozef Lawrynowicz wrote:
>
> Hi,
>
> > diff --git a/gcc/config/msp430/msp430.c b/gcc/config/msp430/msp430.c
> > index 365e9eb..8266fa0 100644
> > --- a/gcc/config/msp430/msp430.c
> > +++ b/gcc/config/msp430/msp430.c
> > @@ -1807,7 +1807,6 @@ const char * const ATTR_CR
There's a path I added where get_alias_set () != 0 was meant to
cover -fno-strict-aliasing but it doesn't since quite some time
(oops). Fixed as follows - preprartory for PR91091 where we'd
otherwise break the testcase below.
Bootstrap / regtest running on x86_64-unknown-linux-gnu.
I'll also b
On 02/07/2019 12:00, Sam Tebbs wrote:
> Hi all,
>
> This patch fixes the regression to gcc.dg/rtl/aarch64/subs_adds_sp.c that
> r271735 caused. This was done by ensuring that the current function's
> frame has
> been laid out before checking if return address signing is enabled.
>
> Tested and
When working on handling partial defs in VN I noticed that
we do not treat MEM[a + 1] and MEM[a + 2] as equal bases.
The following patch fixes that, together with three testcases
illustrating the fixed missed optimizations.
This then caused bogus redundant store removal by FRE again
which made m
I noticed we fail to valueize the RHS when looking for same-valued
stores.
Bootstrap / regtest running on x86_64-unknown-linux-gnu.
Richard.
2019-07-05 Richard Biener
* tree-ssa-sccvn.c (vn_reference_lookup_3): Valueize RHS
when comparing against a store with possibly the s
On Fri, 5 Jul 2019 11:26:20 +0200
Christophe Lyon wrote:
> On Thu, 4 Jul 2019 at 23:46, Jozef Lawrynowicz
> wrote:
> >
> > Also, the gcc.target/arm/noinit-attribute.c test works with msp430.
> > Why not create a effective-target keyword which checks for noinit support,
> > so
> > the test can
On Thu, Jul 4, 2019 at 2:47 PM Jan Hubicka wrote:
>
> >
> > Why does this only happen in fre3?!
> After fre1 we have
>
> test (int i, int j, int k, int l)
> {
> struct c * cptr.0_1;
> struct c * cptr2.1_2;
> int _11;
>
>:
> cptr.0_1 = cptr;
> cptr.0_1->b[i_5(D)].a[j_6(D)].val = 123;
On Fri, Jul 5, 2019 at 12:21 AM Indu Bhagat wrote:
>
> On 07/04/2019 03:43 AM, Richard Biener wrote:
>
> On Thu, Jul 4, 2019 at 2:36 AM Indu Bhagat wrote:
>
> [...]
>
> RE subset of C : It is true that CTF format currently does leave out a very
> small subset of C like FIXED_POINT as you noted (
Greetings,
This first patch removes aarch64 usage of the aese/aesmc and aesd/aesimc
fusions (i.e. aes fusion) implemented in the scheduler due to unpredictable
behaviour observed in cases such as:
- when register allocation goes bad (e.g. extra movs)
- aes operations with xor and zeroed keys among
This patch allows Fortran "parameter" named constants to be named in
OpenMP map and OpenACC copy directives.
Right now, the compiler just says something like:
!$omp target data map(tofrom:N,x)
1
Error: Object 'n' is not a variable at (1)
This is technica
Greetings,
This patch removes the arch-common aese/aesmc and aesd/aesimc fusions
(i.e. aes fusion) implemented in the scheduling phase through the
aarch_crypto_can_dual function. The reason is due to observing
undesired behaviour in cases such as:
- when register allocation goes bad (e.g. extra mo
On Fri, 5 Jul 2019 at 12:57, Jozef Lawrynowicz wrote:
>
> On Fri, 5 Jul 2019 11:26:20 +0200
> Christophe Lyon wrote:
>
> > On Thu, 4 Jul 2019 at 23:46, Jozef Lawrynowicz
> > wrote:
> > >
> > > Also, the gcc.target/arm/noinit-attribute.c test works with msp430.
> > > Why not create a effective-t
On Fri, Jul 05, 2019 at 12:31:17PM +0100, Andrew Stubbs wrote:
> This patch allows Fortran "parameter" named constants to be named in OpenMP
> map and OpenACC copy directives.
>
> Right now, the compiler just says something like:
>
> !$omp target data map(tofrom:N,x)
>
On 05/07/2019 12:49, Jakub Jelinek wrote:
On Fri, Jul 05, 2019 at 12:31:17PM +0100, Andrew Stubbs wrote:
This patch allows Fortran "parameter" named constants to be named in OpenMP
map and OpenACC copy directives.
Right now, the compiler just says something like:
!$omp target data map(to
On Wed, Jul 03, 2019 at 12:46:37PM +0200, Eric Botcazou wrote:
> 2019-07-03 Eric Botcazou
>
> * tree-cfg.c (gimple_make_forwarder_block): Propagate location info on
> phi nodes if possible.
> * tree-scalar-evolution.c (final_value_replacement_loop): Propagate
> location
On Fri, Jul 05, 2019 at 01:10:00PM +0100, Andrew Stubbs wrote:
> > so I don't believe Fortran parameters are OpenMP variables.
> > Scalar Fortran parameters don't even have any data storage block associated
> > with them at all.
>
> Agreed, they are not variables (nor variable), and copying them a
Use "sourceware.org / gcc.gnu.org" for more clarity (bug #90334).
Shakthi Kannan
Index: htdocs/svnwrite.html
===
RCS file: /cvs/gcc/wwwdocs/htdocs/svnwrite.html,v
retrieving revision 1.43
diff -u -p -r1.43 svnwrite.html
--- htdocs/sv
On 05/07/19 12:28 +, Shakthi Kannan wrote:
Use "sourceware.org / gcc.gnu.org" for more clarity (bug #90334).
Committed to CVS - thanks!
Shakthi Kannan
Index: htdocs/svnwrite.html
===
RCS file: /cvs/gcc/wwwdocs/htdocs/svnwrit
On Fri, 5 Jul 2019, Richard Biener wrote:
>
> There's a path I added where get_alias_set () != 0 was meant to
> cover -fno-strict-aliasing but it doesn't since quite some time
> (oops). Fixed as follows - preprartory for PR91091 where we'd
> otherwise break the testcase below.
>
> Bootstrap / r
This implements tracking of partial definitions in value-numbering
so that we can handle
typedef int v2si __attribute__((vector_size(__SIZEOF_INT__ * 2)));
v2si foo (int *a)
{
a[0] = 1;
a[1] = 2;
return *(v2si *)a;
}
and value-number the load to { 1, 2 }.
This happens for example for the
On 05/07/2019 11:33, Richard Earnshaw wrote:
>
> On 02/07/2019 12:00, Sam Tebbs wrote:
>> Hi all,
>>
>> This patch fixes the regression to gcc.dg/rtl/aarch64/subs_adds_sp.c that
>> r271735 caused. This was done by ensuring that the current function's
>> frame has
>> been laid out before checking i
On Fri, Jul 05, 2019 at 02:15:12PM +0200, Jakub Jelinek wrote:
> On Fri, Jul 05, 2019 at 01:10:00PM +0100, Andrew Stubbs wrote:
> > > so I don't believe Fortran parameters are OpenMP variables.
> > > Scalar Fortran parameters don't even have any data storage block
> > > associated
> > > with them
On 7/4/19 8:56 AM, Paolo Carlini wrote:
Hi,
On 27/06/19 23:19, Jason Merrill wrote:
Ah, thanks. Then perhaps we want to change the CLASSTYPE_FINAL in
build_over_call to resolves_to_fixed_type_p (arg), to also handle the
other reasons we might know the dynamic type of the argument, and
remove
On 7/3/19 6:25 PM, Marek Polacek wrote:
This resolves DR 1813 which says that for a class to be a standard-layout
class, it may not have two (possibly indirect) base class subobjects of the
same type. I was going to play DFS games but then I noticed we'd already set
CLASSTYPE_REPEATED_BASE_P, ma
On 28/05/2019 16:01, Szabolcs Nagy wrote:
> v2:
> - use aarch64_simd_decl_p to check for aarch64_vector_pcs.
> - emit the .variant_pcs directive even for local functions.
> - don't require .variant_pcs asm support in compile only tests.
> - add weakref tests.
>
> A dynamic linker with lazy binding
On 7/5/19 6:12 AM, Jakub Jelinek wrote:
> On Wed, Jul 03, 2019 at 12:46:37PM +0200, Eric Botcazou wrote:
>> 2019-07-03 Eric Botcazou
>>
>> * tree-cfg.c (gimple_make_forwarder_block): Propagate location info on
>> phi nodes if possible.
>> * tree-scalar-evolution.c (final_value_rep
Szabolcs Nagy writes:
> On 28/05/2019 16:01, Szabolcs Nagy wrote:
>> v2:
>> - use aarch64_simd_decl_p to check for aarch64_vector_pcs.
>> - emit the .variant_pcs directive even for local functions.
>> - don't require .variant_pcs asm support in compile only tests.
>> - add weakref tests.
>>
>> A
On 05/07/2019 15:04, Jakub Jelinek wrote:
For OpenMP, a warning is not good enough, because if Fortran PARAMETER is
not a variable, then the program is invalid and needs to be rejected.
You could improve the diagnostics by adding some explanation message that
fortran
PARAMETER is not a variable.
On Fri, Jul 05, 2019 at 03:40:55PM +0100, Andrew Stubbs wrote:
> On 05/07/2019 15:04, Jakub Jelinek wrote:
> > > For OpenMP, a warning is not good enough, because if Fortran PARAMETER is
> > > not a variable, then the program is invalid and needs to be rejected.
> > > You could improve the diagnost
While doing the SVE ACLE work, I hit a case in which a pattern had
two iterators and used an attribute without saying which iterator
it was referring to. The choice of iterator made a difference and
in this case the implicit choice happened to be the "wrong" one.
This series raises an error for c
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
No behavioural change except for dropping the unused SVE
divide permutatio
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
I think this is a genuine bugfix for Thumb-1, since previously the
LDREX w
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
I think this is a genuine bugfix for the case in which the 1REG_MODE
and 1
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
No behavioural change -- produces the same code as before.
2019-07-05 R
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
No behavioural change except for dropping the unused *andnot3_bcst
permuta
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
No behavioural change -- produces the same code as before.
2019-07-05 R
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
No behavioural change -- produces the same code as before.
2019-07-05 R
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
No behavioural change -- produces the same code as before except
for forma
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
The vx-builtins.md part changes the choice of from the
implicit to an ex
Use file_location for md_reader's ptr_loc. Also make it public, so that
clients can use the location for error reporting.
I'll apply this once the port changes are in. (It could go in now,
but it's Friday afternoon...)
2019-07-05 Richard Sandiford
gcc/
* read-md.h (md_reader::ptr_l
This patch reports an error if the .md file has an unscoped
attribute that maps to more than one possible value.
I'll apply this once the port patches are in.
2019-07-05 Richard Sandiford
gcc/
* read-md.h (md_reader::record_potential_iterator_use): Add a
file_location paramet
On 05/07/2019 16:12, Richard Sandiford wrote:
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
I think this is a genuine
On Fri, Jul 5, 2019 at 5:15 PM Richard Sandiford
wrote:
>
> This patch is part of a series that fixes ambiguous attribute
> uses in .md files, i.e. cases in which attributes didn't use
> to specify an iterator, and in which could
> have different values depending on the iterator chosen.
>
> No b
Hi Richard,
On 7/5/19 4:10 PM, Richard Sandiford wrote:
This patch is part of a series that fixes ambiguous attribute
uses in .md files, i.e. cases in which attributes didn't use
to specify an iterator, and in which could
have different values depending on the iterator chosen.
I think this is
On 05.07.19 17:22, Richard Sandiford wrote:
> This patch is part of a series that fixes ambiguous attribute
> uses in .md files, i.e. cases in which attributes didn't use
> to specify an iterator, and in which could
> have different values depending on the iterator chosen.
>
> The vx-builtins.md
Hi Richard,
On Fri, Jul 05, 2019 at 04:20:37PM +0100, Richard Sandiford wrote:
> This patch is part of a series that fixes ambiguous attribute
> uses in .md files, i.e. cases in which attributes didn't use
> to specify an iterator, and in which could
> have different values depending on the iter
On 05/07/2019 15:49, Jakub Jelinek wrote:
OK, here is an alternative patch that merely tries to make the error message
more informative.
Basically, the user needs to get past "it isn't working but I need that
value in this kernel", so hopefully this will help get them there.
WDYT?
I don't lik
On 21/06/19 18:13 +0100, Jonathan Wakely wrote:
On 21/06/19 18:08 +0100, Jonathan Wakely wrote:
On 21/06/19 13:01 -0400, Nathan Sidwell wrote:
On 6/21/19 12:01 PM, Jonathan Wakely wrote:
Nathan noticed that the 'static inline' functions in
cause ODR violations when used from inline functions
Segher Boessenkool writes:
> Hi Richard,
>
> On Fri, Jul 05, 2019 at 04:20:37PM +0100, Richard Sandiford wrote:
>> This patch is part of a series that fixes ambiguous attribute
>> uses in .md files, i.e. cases in which attributes didn't use
>> to specify an iterator, and in which could
>> have d
On 7/5/19 9:13 AM, Richard Sandiford wrote:
> This patch is part of a series that fixes ambiguous attribute
> uses in .md files, i.e. cases in which attributes didn't use
> to specify an iterator, and in which could
> have different values depending on the iterator chosen.
>
> No behavioural cha
On Fri, Jul 05, 2019 at 05:26:24PM +0100, Richard Sandiford wrote:
> Segher Boessenkool writes:
> > Maybe there should be some way of indicating what iterator you want if
> > none is mentioned? For the whole pattern, or some global priority scheme
> > even? Changes like (random example)
> >
> >>
Hello,
This patch fixes ambiguous mode of some compare insns of RISC-V.
Only sge, slt and sle are using but other compare insns use
. It seems first group mode settings are ambiguous.
Best Regards,
Katsuhiro Suzuki
Index: gcc/config/riscv/riscv.md
===
Segher Boessenkool writes:
> On Fri, Jul 05, 2019 at 05:26:24PM +0100, Richard Sandiford wrote:
>> Segher Boessenkool writes:
>> > Maybe there should be some way of indicating what iterator you want if
>> > none is mentioned? For the whole pattern, or some global priority scheme
>> > even? Chan
> This change broke gomp/pr88107.c test:
> FAIL: gcc.dg/gomp/pr88107.c (internal compiler error)
> FAIL: gcc.dg/gomp/pr88107.c (test for excess errors)
> Excess errors:
> during GIMPLE pass: graphite
> /usr/src/gcc/gcc/testsuite/gcc.dg/gomp/pr88107.c:26:1: internal compiler
> error: Segmentation fa
Am Fr., 5. Juli 2019 um 18:13 Uhr schrieb Jonathan Wakely :
>
[..]
> I decided against the simplification in the second patch, and
> committed the attached one which is closer to the first patch I sent
> (preserving the __atomic_add and __exchange_and_add functions even
> when they just call the bu
On 5 Jul 2019, Richard Biener said:
> On Fri, Jul 5, 2019 at 12:21 AM Indu Bhagat wrote:
>> CTF, at this time, is type information for entities at global or file scope.
>> This can be used by online debuggers, program tracers (dynamic tracing); More
>> generally, it provides type introspection fo
TARGET_LINK_STACK is unused on Darwin, and only relevant to a processor on
which the port was never released.
tested on powerpc-darwin9,
applied to mainline
thanks
Iain
2019-07-05 Iain Sandoe
* config/rs6000/rs6000-logue.c: Remove unused code.
diff --git a/gcc/config/rs6000/rs6000-
Hi all,
I have achieved a major milestone in adding C++ Modules support to GCC.
Namely the iostream header can be built and used as a header unit.
#including includes an awful lot of the STL, so this has
pushed a large swathe of C++ through the module machinery.
Because 'hello world' now work
On 05/07/19 20:23 +0200, Daniel Krügler wrote:
Am Fr., 5. Juli 2019 um 18:13 Uhr schrieb Jonathan Wakely :
[..]
I decided against the simplification in the second patch, and
committed the attached one which is closer to the first patch I sent
(preserving the __atomic_add and __exchange_and_ad
On Fri, Jul 05, 2019 at 07:28:12PM +0100, Nix wrote:
> > What makes it superior to DWARF stripped down to the above feature set?
>
> Increased compactness. DWARF fundamentally trades off compactness in
> favour of its regular structure, which makes it easier to parse (but not
> easier to interpret
Hi,
On 23/06/19 13:58, Paolo Carlini wrote:
Hi,
here there are a couple of rather straightforward improvements in the
second half of grokdeclarator plus a check_tag_decl change consistent
with the other existing case of multiple_types_p diagnostic. Tested
x86_64-linux.
Gently pinging this.
Awesome!
On Fri, Jul 5, 2019, 2:30 PM Nathan Sidwell wrote:
> Hi all,
> I have achieved a major milestone in adding C++ Modules support to GCC.
> Namely the iostream header can be built and used as a header unit.
> #including includes an awful lot of the STL, so this has
> pushed a large swathe
On Thu, Jul 04, 2019 at 02:56:47PM +0200, Paolo Carlini wrote:
> --- cp/call.c (revision 273076)
> +++ cp/call.c (working copy)
> @@ -9845,17 +9852,6 @@ build_new_method_call_1 (tree instance, tree fns,
>
> if (call != error_mark_node)
> {
> - /* Optimize away vtable l
On Thu, Jul 4, 2019 at 11:43 AM Martin Liška wrote:
>
> On 7/4/19 5:03 PM, David Edelsohn wrote:
> > On Thu, Jul 4, 2019 at 10:38 AM Martin Liška wrote:
> >>
> >> Hi.
> >>
> >> Recently I've introduced a new .gnu.lto_.lto section that
> >> is supposed to provide meta information about a LTO bytec
On 7/2/19 8:11 AM, Jonathan Wakely wrote:
One more comment. In this:
+#if __cplusplus > 201703L \
+?? && defined(_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED)
+?? if (__builtin_is_constant_evaluated())
can be simplified to just:
#ifdef __cpp_lib_is_constant_evaluated
if (s
86 matches
Mail list logo