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

--- Comment #16 from Marc Glisse <glisse at gcc dot gnu.org> ---
(patch should use 'fn && DECL_CONSTRUCTOR_P (fn)' since fn can be NULL)

As I was half expecting, messing with the types that directly doesn't work. It
means 'this' has type T*restrict, and if I try for instance to bind it with a
T*const& reference, gcc is unwilling to discard the restrict qualifier.

I wonder if modifying the declarations later (say during gimplification) to
mark them with restrict would work.

I'd rather avoid teaching the middle-end a second way that parameters can be
__restrict (being the first argument of a C++ constructor), better if this can
all be done in the front-end.

Reply via email to