On Mon, Oct 31, 2016 at 10:45:05AM -0700, Richard Smith via cfe-commits wrote: > On Sun, Oct 30, 2016 at 12:32 PM, Joerg Sonnenberger <jo...@bec.de> wrote: > > > On Sun, Oct 30, 2016 at 12:54:28PM -0600, Eric Fiselier wrote: > > > Richard requested this change. Take a look at > > > https://reviews.llvm.org/D26044 for more rational. > > > > I don't see much rational and in fact, I disagree with some of the > > mentioned items. E.g. presence of libc++ won't tell you if you can use > > sized deallocation as that's a ABI library issue. > > > The real situation is a lot more subtle than that. Every one of libc++abi, > libcxxrt, libc++, libsupc++, and libstdc++ provides definitions of global > operator new and operator delete. It's obviously not part of the Itanium > C++ ABI, so it's not the responsibility of a pure "ABI library" to provide > it, but the boundary between the ABI library and the standard library has > never been formally defined.
That doesn't actually invalidate anything I said. But the make the argument even more explicit: any detection based on magic files in the include directories are breaking important properties. A preprocessed file is now no longer independent of the build system. Joerg _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits