https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124389

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
      Known to work|                            |13.4.0
      Known to fail|                            |14.1.0, 15.2.0, 16.0
   Last reconfirmed|                            |2026-03-06

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The example works with GCC 13 and with Clang and EDG.

It stated to be rejected with r14-4793-gdad311874ac3b3

    c++: remove NON_DEPENDENT_EXPR, part 1
    This tree code dates all the way back to r69130[1] which implemented
    typing of non-dependent expressions.  Its motivation was never clear (to
    me at least) since its documentation in e.g. cp-tree.def doesn't seem
    accurate anymore.  build_non_dependent_expr has since gained a bunch of
    edge cases about whether or how to wrap certain templated trees, making
    it hard to reason about in general.

    So this patch removes this tree code, and temporarily turns
    build_non_dependent_expr into the identity function.  The subsequent
    patch will remove build_non_dependent_expr and adjust its callers
    appropriately.

    We now need to more thoroughly handle templated (sub)trees in a couple
    of places which previously didn't need to since they didn't look through
    NON_DEPENDENT_EXPR.

    [1]: https://gcc.gnu.org/pipermail/gcc-patches/2003-July/109355.html

Reply via email to