Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Oct 2015 20:55:32 -0500
From:      Pedro Giffuni <pfg@FreeBSD.org>
To:        Adrian Chadd <adrian.chadd@gmail.com>
Cc:        "src-committers@freebsd.org" <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r289150 - head/contrib/gcc/cp
Message-ID:  <561B1314.4070106@FreeBSD.org>
In-Reply-To: <CAJ-VmomhAdTshPi9nvF%2Bz2-H4a4nfkODSdSqf-ZNxUMAthP0ow@mail.gmail.com>
References:  <201510111958.t9BJwvuI069443@repo.freebsd.org> <CAJ-VmomhAdTshPi9nvF%2Bz2-H4a4nfkODSdSqf-ZNxUMAthP0ow@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On 11/10/2015 07:20 p.m., Adrian Chadd wrote:
> Heya!
>
> How'd you test this? Sean is reporting (on irc) there's some weirdness
> after this commit.

Hmm... I only rebuilt it and ran minimal tests in my box.
It only looked imporant for mesa.

I will revert to investigate, thanks for the report.

Pedro.

>
> -a
>
>
> On 11 October 2015 at 12:58, Pedro F. Giffuni <pfg@freebsd.org> wrote:
>> Author: pfg
>> Date: Sun Oct 11 19:58:57 2015
>> New Revision: 289150
>> URL: https://svnweb.freebsd.org/changeset/base/289150
>>
>> Log:
>>    Correct handling of enum attributes with g++
>>
>>    From OpenBSD's commit log:
>>
>>    This was responsible for memory corruption with recent versions
>>    of Mesa where c and c++ code share a header with a packed enum type.
>>
>>    Reference:
>>    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39219
>>
>>    Obtained from:        OpenBSD (CVS rev. 1.2)
>>    MFC after:    1 week
>>
>> Modified:
>>    head/contrib/gcc/cp/parser.c
>>
>> Modified: head/contrib/gcc/cp/parser.c
>> ==============================================================================
>> --- head/contrib/gcc/cp/parser.c        Sun Oct 11 19:30:09 2015        (r289149)
>> +++ head/contrib/gcc/cp/parser.c        Sun Oct 11 19:58:57 2015        (r289150)
>> @@ -10906,6 +10906,7 @@ cp_parser_enum_specifier (cp_parser* par
>>     if (cp_parser_allow_gnu_extensions_p (parser))
>>       {
>>         tree trailing_attr = cp_parser_attributes_opt (parser);
>> +      trailing_attr = chainon (trailing_attr, attributes);
>>         cplus_decl_attributes (&type,
>>                               trailing_attr,
>>                               (int) ATTR_FLAG_TYPE_IN_PLACE);
>>




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?561B1314.4070106>