On Mon, Jul 23, 2018 at 12:28 PM Jakub Jelinek <ja...@redhat.com> wrote: > > On Mon, Jul 23, 2018 at 12:17:42PM +0200, Richard Biener wrote: > > > Bootstrapped/regtested on x86_64-linux. > > > > Thanks for working on this. I wonder if we can completely hide this > > from the middle-end, without requiring defining of c_dialect_cxx. > > There is the BUILT_IN_FRONTEND class so you could somewhere > > manually inject a decl in that class for C++? > > But then I couldn't handle folding of the builtin in the middle-end to false, > which is what I need (because in the FE it needs to be either folded to > true, or its folding deferred until later). > Or maybe in the C++ gimplification langhook?
Yes, I was thinking the C++ langhook or its fully_fold routine. > Seems we have a single BUILT_IN_FRONTEND builtin in the whole compiler, > __integer_pack, but it doesn't act as a normal builtin, given it is a > templatish magic. Yeah, I think at some point we considered removing BUILT_IN_FRONTEND ... Nowadays internal-use builtins can easily be internal-functions but of couse this one will eventually be used from libstdc++. Richard. > > Jakub