This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [C++ Patch] PR 85112 ("[8 Regression] ICE with invalid constexpr")


Hi again,

On 14/04/2018 00:12, Paolo Carlini wrote:
Hi,

On 13/04/2018 19:45, Jason Merrill wrote:
Ah, I see.  The problem is that even though convert_to_integer_1 was
called with dofold false, we lose that when it calls convert(). Why
not recurse directly to convert_to_integer_1 with the underlying type?
  That would avoid the undesired folding.
Interesting. I had no idea that this seemingly simple error-recovery issue was ultimately due to a substantive if latent issue in convert.c. Anyway, in the meanwhile I tried a few variants of direct recursion without much success, my boostraps all failed pretty quickly and pretty badly. However the below - which isn't far from the spirit of your analysis, I think - is holding up well, at least bootstrap + C++ testsuite are definitely OK. Should I continue testing it over the weekend?
The below seems much better, also bootstraps fine and I'm now fully testing it.

Thanks,
Paolo.

PS: no idea why earlier today I wasted a lot of time trying to completely avoid maybe_fold_build1_loc :(

/////////////////////////

Attachment: patch_85112_4
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]