This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix PTA with lots of SFTs


Richard Guenther wrote:
On Nov 27, 2007 9:38 PM, David Daney <ddaney@avtrex.com> wrote:
Richard Guenther wrote:
On Nov 27, 2007 8:03 PM, Daniel Berlin <dberlin@dberlin.org> wrote:
On 11/27/07, David Daney <ddaney@avtrex.com> wrote:
/home/daney/gccsvn/native-clean/./prev-gcc/xgcc
-B/home/daney/gccsvn/native-clean/./prev-gcc/
-B/usr/local/test/x86_64-unknown-linux-gnu/bin/ -c -g -O2 -DIN_GCC -W
-Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition -Wmissing-format-attribute -pedantic
-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror
-DHAVE_CONFIG_H -I. -I. -I../../clean/gcc -I../../clean/gcc/.
-I../../clean/gcc/../include -I../../clean/gcc/../libcpp/include
-I../../clean/gcc/../libdecnumber -I../../clean/gcc/../libdecnumber/bid
-I../libdecnumber ../../clean/gcc/tree-ssa-structalias.c -o
tree-ssa-structalias.o
cc1: warnings being treated as errors
../../clean/gcc/tree-ssa-structalias.c: In function 'find_what_p_points_to':
../../clean/gcc/tree-ssa-structalias.c:4764: error: 'j' may be used
uninitialized in this function
../../clean/gcc/tree-ssa-structalias.c:4764: note: 'j' was declared here
make[3]: *** [tree-ssa-structalias.o] Error 1

Hmmm, this is actually theoretically true, since we don't set j when low > high in get_first_overlapping_subvar.
But then we ICE due to the assert.  Which is of course disabled with
--disable-checking.  /me thinks that we should just remove the capability
of disabling gcc_assert()s.

Or just initialize j in this case.  For x86_64-pc-linux-gnu it appears
to be the *only* place where -Werror kills the bootstrap.

But if j is not set by get_first_overlapping_subvar we might silently generate wrong code. So maybe we want a different gcc_do_not_disable_assert () which doesn't guard sanity checks but required otherwise fatal invariants. But practially all gcc_asserts should be of such nature.


Well I don't care one way or the other. I was just seeing if I could reproduce http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34144 . I hit this first.


The install documentation mentions that you can use --disable-checking, so something should probably change.

David Daney


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]