Bug 44482 - some warnings in libgcc amd64-darwin 4.5.0
Summary: some warnings in libgcc amd64-darwin 4.5.0
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: other (show other bugs)
Version: 4.5.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-06-09 16:28 UTC by Jay
Modified: 2013-12-21 19:26 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jay 2010-06-09 16:28:18 UTC
note this is later bootstrap stages so shouldn't matter what the bootstrap compiler was (assuming it compiled the compiler reasonably correctly)

For the missing prototypes, I suggest you just put them right there:

void Foo(void);
void Foo(void)
{
  ...
}


for the uninitialized I suggest just initializing them and not worrying about it.


For the cast I already posted a patch adding const.


The shifts are buried in macros and I didn't look so not sure.
Personally if I want (a << 32) I'd just do ((a << 31) << 1)..or, uh, just 0,
but that may or may not be relevant here.


_darwin10_Unwind_FindEnclosingFunction I didn't look at.


I'll maybe come back to this myself, hopefully that's not an abuse of gcc bugzilla (esp. given that this is not using -disable-bootstrap so not a terrible bug report).


I'm surprised -Werror isn't used here.
I suggest -Wmissing-prototypes only apply to callers not implementers? I realize it is a tradeoff, because you want to make sure there is a prototype somewhere for callers (though not really for libgcc math helpers...) and forcing the implementor to pull that in is a reasonable way to make that so.


/home/jayk/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2.c: In function 'uw_init_context_1':
/home/jayk/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2.c:1452:5: warning: missing initializer
/home/jayk/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2.c:1452:5: warning: (near initialization for 'once_regsizes.__reserved')



/Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde-darwin.c: At top level:
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde-darwin.c:279:1: warning: no previous prototype for '_darwin10_Unwind_FindEnclosingFunction'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -m32 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o fixunstfsi_s.o -MT fixunstfsi_s.o -MD -MP -MF fixunstfsi_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/fixunstfsi.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/fixunstfsi.c: In function '__fixunstfsi':
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/fixunstfsi.c:42:3: warning: left shift count >= width of type
    

    
/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -m32 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o multf3_s.o -MT multf3_s.o -MD -MP -MF multf3_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c: In function '__multf3':
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c:38:1: warning: 'R_e' may be used uninitialized in this function



/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o darwin-64_s.o -MT darwin-64_s.o -MD -MP -MF darwin-64_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/darwin-64.c
/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o addtf3_s.o -MT addtf3_s.o -MD -MP -MF addtf3_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/addtf3.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/addtf3.c:35:8: warning: no previous prototype for '__addtf3'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o divtf3_s.o -MT divtf3_s.o -MD -MP -MF divtf3_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c:35:8: warning: no previous prototype for '__divtf3'
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c: In function '__divtf3':
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c:38:1: warning: 'R_e' may be used uninitialized in this function
/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o eqtf2_s.o -MT eqtf2_s.o -MD -MP -MF eqtf2_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/eqtf2.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/eqtf2.c:35:9: warning: no previous prototype for '__eqtf2'
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/eqtf2.c:51:1: warning: no previous prototype for '__netf2'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o getf2_s.o -MT getf2_s.o -MD -MP -MF getf2_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/getf2.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/getf2.c:35:9: warning: no previous prototype for '__getf2'
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/getf2.c:51:1: warning: no previous prototype for '__gttf2'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o letf2_s.o -MT letf2_s.o -MD -MP -MF letf2_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/letf2.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/letf2.c:35:9: warning: no previous prototype for '__letf2'
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/letf2.c:51:1: warning: no previous prototype for '__lttf2'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o multf3_s.o -MT multf3_s.o -MD -MP -MF multf3_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c:35:8: warning: no previous prototype for '__multf3'
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c: In function '__multf3':
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/multf3.c:38:1: warning: 'R_e' may be used uninitialized in this function


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o negtf2_s.o -MT negtf2_s.o -MD -MP -MF negtf2_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/negtf2.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/negtf2.c:35:8: warning: no previous prototype for '__negtf2'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o subtf3_s.o -MT subtf3_s.o -MD -MP -MF subtf3_s.dep -DSHARED -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/subtf3.c
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/config/soft-fp/subtf3.c:35:8: warning: no previous prototype for '__subtf3'


/Users/jay/obj/gcc/./gcc/xgcc -B/Users/jay/obj/gcc/./gcc/ -B/Users/jay/amd64-darwin/bin/ -B/Users/jay/amd64-darwin/lib/ -isystem /Users/jay/amd64-darwin/include -isystem /Users/jay/amd64-darwin/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/Users/jay/src/gcc-4.5.0/libgcc -I/Users/jay/src/gcc-4.5.0/libgcc/. -I/Users/jay/src/gcc-4.5.0/libgcc/../gcc -I/Users/jay/src/gcc-4.5.0/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o unwind-dw2-fde-darwin.o -MT unwind-dw2-fde-darwin.o -MD -MP -MF unwind-dw2-fde-darwin.dep -fexceptions -c /Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde-darwin.c -fvisibility=hidden -DHIDE_EXPORTS
In file included from /Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde-darwin.c:36:0:
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde.h: In function 'last_fde':
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde.h:173:3: warning: cast discards qualifiers from pointer target type
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde-darwin.c: At top level:
/Users/jay/src/gcc-4.5.0/libgcc/../gcc/unwind-dw2-fde-darwin.c:279:1: warning: no previous prototype for '_darwin10_Unwind_FindEnclosingFunction'
Comment 1 Dominique d'Humieres 2013-12-21 19:26:01 UTC
I see the soft-fl warning for the 4.8 branch (r206161), but not for the trunk (r206155). The "warning: no previous prototype for ..." are still there for both branches.

Since this PR is more than three years old without feedback, I prefer to close as fixed (true for the soft-fl part) and open new ones for the different components generating warnings.