On Thu, Feb 23, 2012 at 07:17:49AM +0100, Vladimir 'φ-coder/phcoder' Serbinenko wrote: > >../../../grub-core/normal/charset.c: In function > 'grub_bidi_line_logical_to_visual': > ../../../grub-core/normal/charset.c:737: error: cannot optimize > possibly infinite > > loops If I do what is already done for GRUB_LONG_MIN and use: > #define GRUB_INT_MIN (-0x7fffffff - 1) ...then gcc 4.6 is happy. gcc > 4.4 goes on complaining > > about the inability to optimize possibly infinite loops. > in charset.c we actually want to ensure that it doesn't go negative. > In grub-mkfont.c it's ok to disable warning altogether. Here is the > patch (+grub-install fix)
gcc-4.6 -DHAVE_CONFIG_H -I. -I../.. -Wall -W -I./include -DGRUB_UTIL=1 -DGRUB_LIBDIR=\"/usr/lib/grub\" -DLOCALEDIR=\"/usr/share/locale\" -DGRUB_MACHINE_EMU=1 -DGRUB_MACHINE=POWERPC_EMU -DGRUB_TARGET_CPU_POWERPC=1 -DGRUB_FILE=\"grub-core/disk/diskfilter.c\" -I. -I../.. -I. -I../.. -I../../include -I./include -I./grub-core/gnulib -I../../grub-core/gnulib -g -Wall -O2 -Wall -W -Wshadow -Wold-style-declaration -Wold-style-definition -Wpointer-arith -Wundef -Wextra -Waddress -Warray-bounds -Wattributes -Wbuiltin-macro-redefined -Wcast-align -Wchar-subscripts -Wclobbered -Wcomment -Wcoverage-mismatch -Wdeprecated -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wempty-body -Wendif-labels -Wfloat-equal -Wformat-contains-nul -Wformat-extra-args -Wformat-security -Wformat-y2k -Wignored-qualifiers -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wunsafe-loop-optimizations -Wlogical-op -Wmain -Wmissing-braces -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-noreturn -Wmudflap -Wmultichar -Wnonnull -Woverflow -Wpacked-bitfield-compat -Wparentheses -Wpointer-arith -Wpointer-to-int-cast -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wstrict-aliasing -Wswitch -Wsync-nand -Wtrigraphs -Wtype-limits -Wundef -Wuninitialized -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wvariadic-macros -Wvolatile-register-var -Wwrite-strings -Wmissing-parameter-type -Wnested-externs -Wstrict-prototypes -Wpointer-sign -Werror -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -Wno-old-style-definition -Wno-unsafe-loop-optimizations -c -o grub-core/disk/libgrubkern_a-diskfilter.o `test -f 'grub-core/disk/diskfilter.c' || echo '../../'`grub-core/disk/diskfilter.c ../../grub-core/disk/diskfilter.c: In function 'insert_array': ../../grub-core/disk/diskfilter.c:975:14: error: declaration of 'disk' shadows a parameter [-Werror=shadow] ../../grub-core/disk/diskfilter.c:953:27: error: shadowed declaration is here [-Werror=shadow] -- Len Sorensen _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel