gengtype: missing `tag' option (MELT branch)
Basile Starynkevitch
basile@starynkevitch.net
Fri Feb 12 07:58:00 GMT 2016
On 02/11/16 23:13, David Malcolm wrote:
> On Thu, 2016-02-11 at 19:54 +0100, Basile Starynkevitch wrote:
>> Hello All,
>>
>> I am busy merging the GCC trunk branch (i.e. future GCC 6) into the
>> MELT
>> branch & plugin.
>>
>> I am noticing a strange thing.
>>
>> I was able to merge GCC trunk svn rev. 227945 into the MELT branch
>> (svn
>> rev. 233352) without any issues.
>>
>> Now, I am trying to merge into the MELT branch
>>
>> svn merge -r227926:227945 ^/trunk
>>
>> Notice that the merge above is quite small, and AFAIU did not touch
>> any
>> gengtype related stuff.
>>
>> But strangely, the merged build is failing in gengtype:
>>
>>
>> build/gengtype -v \
>> -r gtype.state
>> gengtype reading state file gtype.state;gengtype read 1085612 bytes.
>> ../../gcc-melt-basile/gcc/melt/generated/meltrunsup.h:256: missing
>> `tag'
>> option for type `gimple'
>>
>> Here are lines 252-267 of my gcc/melt/generated/meltrunsup.h
>> /*gtyctypebox gtyctyp #4 CTYPE_GIMPLE*/
>> struct GTY (()) meltgimple_st /* when MELTOBMAG_GIMPLE*/
>> {
>> meltobject_ptr_t discr;
>> gimple val;
>> operator melt_ptr_t ()
>> {
>> return reinterpret_cast<melt_ptr_t>(this);
>> }
>> }; /* end of meltgimple_st */
>>
>> struct GTY (()) entrygimplemelt_st /* for MELTOBMAG_MAPGIMPLES*/
>> {
>> gimple e_at;
>> melt_ptr_t e_va;
>> };
>>
>> In r227941, "gimple" changed meaning. It's no longer a pointer to a
>> statement; instead, it's now the statement struct itself (see e.g.
>> https://gcc.gnu.org/ml/gcc-patches/2016-02/msg00765.html )
>>
>> Try changing these to "gimple *".
That surely helps a lot. My feeling is that such a drastic change might
justify a comment in gcc/coretypes.h (for those porting a plugin from
GCC 5 to newer versions of GCC)
Thanks, regards.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***
More information about the Gcc
mailing list