Sorry, I meant move the array declarations within tables.h.
Like you have,

  extern  const   struct  clan_type       clan_table[MAX_CLAN];
  extern  const   struct  position_type   position_table[];

etc...  Then below those is:

  struct flag_type
  {
      char *name;
      int bit;
      bool settable;
  };
  struct clan_type
  {
      char        *name;
      char        *who_name;
      sh_int      hall;
      bool        independent; /* true for loners */
  };

etc...

See, it's trying to create arrays of clan_type and flag_type and stuff
before they've been defined.  GCC 4 decided to be picky about this.  I
assume they started to comply with some part of the C specs that
everyone else ignores.

So anyway, take all those extern array declarations in tables.h and
move them to the bottom of the file, under the struct definitions. 
That's all I changed to get stock ROM to compile on my FC4 machine.


On 2/11/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> Hi Mike (and others),
>
> > Welcome to GCC 4!
>
> Thanks!?
> GCC 4 is picky. :(
>
> > It's not the array size that's the problem, it's the fact that it's
> > trying to use clan_type, flag_type, etc. before they're defined.
>
> That much makes sense to me, but...
>
> > You know all of those delcarations it complained about?  Yeah, those.=20
>
> Do I ever! (There's, umm... LOTS of them)
>
> > Move them down to the bottom of the file, after all the structure
> > definitions.  Then it'll compile.
>
> The complaints are from a file called tables.h, which is an #include.
> I've tried to move the #include to the bottom of the file, but the same 
> warnings appear.
>
> Aside from moving the tables, do you have any other suggestions or am I too 
> daft to even bother playing with this anymore?
>
> > --Mike
>
> -Jesse
>
> PS.  If I move the #include to the very top of the files, will that change 
> anything?  I don't have the code with me so I can't try it before I ask it.
>
>
--
ROM mailing list
[email protected]
Unsubscribe here ->>> http://www.rom.org/cgi-bin/mailman/listinfo/rom

Reply via email to