On May 15, 2014, at 11:05 PM, Richard Smith <rich...@metafoo.co.uk> wrote:
> Thank you for fixing this! yes, thanks! — Marshall > > > On Thu, May 15, 2014 at 6:54 PM, Nico Weber <tha...@chromium.org> wrote: > On Fri, May 16, 2014 at 12:11 AM, Marshall Clow <mclow.li...@gmail.com> wrote: > > On May 15, 2014, at 10:08 AM, Jeffrey Yasskin <jyass...@google.com> wrote: > > > I would totally believe those were wrong. They worked around > > <stddef.h> doing something absolutely crazy that I don't remember > > anymore, and it sounds like that's been fixed. > > My only concern is with the initial checkin comment “for ubuntu”. > If this doesn’t break Ubuntu, then I’m good with it. > > r208942, thanks! I did some light testing on Ubuntu with the patch, and > things still seemed to work with it. (And the thing mentioned in PR19723 now > works: > > #include <cstddef> > struct A { int a; }; > int O = offsetof(A, a); > > $ clang -c -stdlib=libc++ -Ipath/to/libcxx/include -std=c++11 > > This was broken without this change, and this is e.g. needed to bootstrap > clang.) > > > — Marshall > > > On Thu, May 15, 2014 at 5:20 AM, Alp Toker <a...@nuanti.com> wrote: > >> A little SVN digging indicates the change originated in r104516. Removing > >> it > >> cursorily seems OK, CC'ing in Jeffrey Yasskin who wrote it. > >> > >> Alp. > >> > >> > >> > >> On 15/05/2014 07:21, Nico Weber wrote: > >>> > >>> > >>> Ping. > >>> > >>> > >>> On May 13, 2014 12:05 PM, "Nico Weber" <tha...@chromium.org > >>> <mailto:tha...@chromium.org>> wrote: > >>> > >>> D'oh, forgot to cc Marshall :-) > >>> > >>> > >>> On Tue, May 13, 2014 at 12:00 PM, Nico Weber <tha...@chromium.org > >>> <mailto:tha...@chromium.org>> wrote: > >>> > >>> Hi, > >>> > >>> r207606 changed the __need_foo macros to behave like they do > >>> with gcc: If they are set, _only_ the __need_foo stuff gets > >>> defined. libc++'s cstddef sets a few __need_foo settings, so > >>> cstddef now doesn't work right with libc++ after clang r207606. > >>> > >>> The attached patch removes the __need_foo defines from > >>> libc++'s cstddef. They were added with a cryptic commit > >>> message ""for ubuntu" years ago - I think they're incorrect, > >>> and things still seem to work without them. (libstdc++ doesn't > >>> set them either.) Maybe they were needed before clang had > >>> r207606 - if so, this patch should also improve how libc++ > >>> works when built with gcc. > >>> > >>> This fixes PR19723, see the bug for some more information and > >>> discussion. > >>> > >>> Ok? > >>> > >>> Nico > >>> > >>> > >>> > >>> > >>> _______________________________________________ > >>> cfe-commits mailing list > >>> cfe-commits@cs.uiuc.edu > >>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > >> > >> > >> -- > >> http://www.nuanti.com > >> the browser experts > >> > > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > >
_______________________________________________ cfe-commits mailing list cfe-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits