On Wednesday, 8 September 2021 15:44:28 CEST Jason Merrill wrote: > On 9/8/21 5:37 AM, Matthias Kretz wrote: > > On Tuesday, 7 September 2021 19:36:22 CEST Jason Merrill wrote: > >>> case PAREN_EXPR: > >>> - RETURN (finish_parenthesized_expr (RECUR (TREE_OPERAND (t, 0)))); > >>> + if (REF_PARENTHESIZED_P (t)) > >>> + RETURN (finish_parenthesized_expr (RECUR (TREE_OPERAND (t, > >>> 0)))); > >>> + else > >>> + RETURN (RECUR (TREE_OPERAND (t, 0))); > >> > >> I think you need to build a new PAREN_EXPR in the assoc barrier case as > >> well, for it to have any effect in templates. > > > > My intent was to ignore __builtin_assoc_barrier in templates / constexpr > > evaluation since it's not affected by -fassociative-math anyway. Or do you > > mean something else? > > I agree about constexpr, but why wouldn't template instantiations be > affected by -fassociative-math like any other function?
Oh, that seems like a major misunderstanding on my part. I assumed tsubst_copy_and_build would evaluate the expressions in template arguments π€¦. I'll expand the test and will fix. -- ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ Dr. Matthias Kretz https://mattkretz.github.io GSI Helmholtz Centre for Heavy Ion Research https://gsi.de stdβ::simd ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ