Re: [PATCH] c++: Distinguish btw. alignof and __alignof__ in cp_tree_equal [PR97273]

2020-10-20 Thread Patrick Palka via Gcc-patches
On Fri, 9 Oct 2020, Jason Merrill wrote: > On 10/9/20 4:48 AM, Jakub Jelinek wrote: > > On Tue, Oct 06, 2020 at 03:40:52PM -0400, Jason Merrill via Gcc-patches > > wrote: > > > On 10/4/20 11:28 PM, Patrick Palka wrote: > > > > cp_tree_equal currently considers alignof the same as __alignof__, but

Re: [PATCH] c++: Distinguish btw. alignof and __alignof__ in cp_tree_equal [PR97273]

2020-10-09 Thread Jason Merrill via Gcc-patches
On 10/9/20 4:48 AM, Jakub Jelinek wrote: On Tue, Oct 06, 2020 at 03:40:52PM -0400, Jason Merrill via Gcc-patches wrote: On 10/4/20 11:28 PM, Patrick Palka wrote: cp_tree_equal currently considers alignof the same as __alignof__, but these operators are semantically different ever since r8-7957.

Re: [PATCH] c++: Distinguish btw. alignof and __alignof__ in cp_tree_equal [PR97273]

2020-10-09 Thread Jakub Jelinek via Gcc-patches
On Tue, Oct 06, 2020 at 03:40:52PM -0400, Jason Merrill via Gcc-patches wrote: > On 10/4/20 11:28 PM, Patrick Palka wrote: > > cp_tree_equal currently considers alignof the same as __alignof__, but > > these operators are semantically different ever since r8-7957. In the > > testcase below, this c

Re: [PATCH] c++: Distinguish btw. alignof and __alignof__ in cp_tree_equal [PR97273]

2020-10-06 Thread Jason Merrill via Gcc-patches
On 10/4/20 11:28 PM, Patrick Palka wrote: cp_tree_equal currently considers alignof the same as __alignof__, but these operators are semantically different ever since r8-7957. In the testcase below, this causes the second static_assert to fail on targets where alignof(double) != __alignof__(doub

[PATCH] c++: Distinguish btw. alignof and __alignof__ in cp_tree_equal [PR97273]

2020-10-04 Thread Patrick Palka via Gcc-patches
cp_tree_equal currently considers alignof the same as __alignof__, but these operators are semantically different ever since r8-7957. In the testcase below, this causes the second static_assert to fail on targets where alignof(double) != __alignof__(double) because the specialization cache (which