On 02.01.2013 11:22, Colin Watson wrote: > On Sun, Aug 05, 2012 at 05:20:46PM -0500, Bruce Dubbs wrote: >> The latest flex makes the GRUB-2.00 build fail. I can work around >> the issues with --disable-werror, but grub-core/script/yylex.l >> causes two warnings that do not work with -Werror. >> >> ./grub-core/script/yylex.l: At top level: >> grub_script.yy.c:2351:13: error: 'yy_fatal_error' defined but not used >> >> This can be fixed by removing #define YY_FATAL_ERROR(msg) in yylex.l. > > That would be incorrect; the default implementation of yy_fatal_error > uses fprintf, which is not valid in parts of GRUB that need to run > freestanding. More correct would probably be to insert an artificial > reference to yy_fatal_error, since flex offers no way to suppress its > definition. >
It's ok to make such warnings non-breaking by corresponding #pragma. In fact we already have: #pragma GCC diagnostic ignored "-Wunused-function" So the report is obviously for some older version. >> grub_script.yy.c: In function 'yy_scan_bytes': >> grub_script.yy.c:2296:17: error: comparison between signed and >> unsigned integer expressions [-Werror=sign-compare] >> >> This one is a little more difficult because it is generated by flex. >> I don't know how to fix this except with a sed after >> grub_script.yy.c is generated by flex. > > I tried to reproduce this and the other warning with flex 2.5.37 and GCC > 4.7.2 and couldn't, so I'm reluctant to make a change that I can't test. > Can you still reproduce this? If so, could you attach your generated > grub_script.yy.c? > -- Regards Vladimir 'φ-coder/phcoder' Serbinenko
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Grub-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/grub-devel
