diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | Makeconfig | 3 | ||||
-rw-r--r-- | csu/Makefile | 11 | ||||
-rw-r--r-- | csu/initfini.c | 15 | ||||
-rw-r--r-- | stdio/vfscanf.c | 2 |
5 files changed, 18 insertions, 22 deletions
@@ -1,5 +1,14 @@ Wed Jul 26 02:00:29 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> + * stdio/vfscanf.c (conv_error): Simplify expression to avoid + "value computed is not used" warning. + + * Makeconfig (+gccwarn): Removed -Wconversion. + + * csu/initfini.c (GLOBAL): Macro removed. + (_init, _fini): Always define globally. + * csu/Makefile (crtstuff, initfini): Don't make crt[in]_s.o. + * asia, backward, europe, leapseconds, southamerica: New data from ADO's 95e. @@ -294,8 +294,7 @@ RANLIB = ranlib endif # Extra flags to pass to GCC. -+gccwarn := -Wall -Wwrite-strings -Wno-parentheses -Winline \ - -Wbad-function-cast -Wconversion ++gccwarn := -Wall -Wwrite-strings -Wno-parentheses -Winline -Wbad-function-cast # This is the program that generates makefile # dependencies from C source files. diff --git a/csu/Makefile b/csu/Makefile index 4943087..31b0f0a 100644 --- a/csu/Makefile +++ b/csu/Makefile @@ -50,12 +50,9 @@ else start-installed-name = crt1.o # These are the special initializer/finalizer files. They are always the -# first and last file in the link. crti.o ... crtn.o are used for normal -# linking; they define the global "functions" _init and _fini to run the -# .init and .fini sections. crti_s.o ... crtn_s.o are for making shared -# library objects; they put the prologue/epilogue code into the .init and -# .fini sections, but define no global symbols. -crtstuff = crti crtn crti_s crtn_s +# first and last file in the link. crti.o ... crtn.o define the global +# "functions" _init and _fini to run the .init and .fini sections. +crtstuff = crti crtn install-lib += $(crtstuff:=.o) extra-objs += $(crtstuff:=.o) @@ -67,13 +64,11 @@ omit-deps += $(crtstuff) # disable emission of .size directives and debugging information, since # they will get confused by the splitting of the output we do. $(objpfx)cr%i.s $(objpfx)cr%n.s: initfini.c; $(initfini) -$(objpfx)cr%i_s.s $(objpfx)cr%n_s.s: initfini.c; $(initfini) define initfini -rm -f $(objpfx)crtcommon.tmp (echo 'cat > crtcommon.tmp <<\EOF_common'; \ $(CC) $< $(CPPFLAGS) $(CFLAGS) \ - $(patsubst %,-DGLOBAL=static,$(filter %_s.s,$@)) \ -finhibit-size-directive -g0 -S -o -; \ echo 'EOF_common') | (cd $(@D); $(SHELL)) cat $(objpfx)crtcommon.tmp >> $(objpfx)crti.s-new diff --git a/csu/initfini.c b/csu/initfini.c index bfd120b..1da5e27 100644 --- a/csu/initfini.c +++ b/csu/initfini.c @@ -34,18 +34,11 @@ Cambridge, MA 02139, USA. */ #include <stdlib.h> -/* We are compiled with -DGLOBAL=static to generate the versions used for - shared libraries' .init and .fini sections, which do not have entry - point symbols. */ -#ifndef GLOBAL -#define GLOBAL -#endif - /* These declarations make the functions go in the right sections when we define them below. GCC syntax does not allow the attribute specifications to be in the function definitions themselves. */ -GLOBAL void _init (void) __attribute__ ((section (".init"))); -GLOBAL void _fini (void) __attribute__ ((section (".fini"))); +void _init (void) __attribute__ ((section (".init"))); +void _fini (void) __attribute__ ((section (".fini"))); /* End the here document containing the initial common code. Then move the output file crtcommon.tmp to crti.s-new and crtn.s-new. */ @@ -55,7 +48,7 @@ cp -f crti.s-new crtn.s-new"); /* Append the .init prologue to crti.s-new. */ asm ("cat >> crti.s-new <<\\EOF.crti.init"); -GLOBAL void +void _init (void) { (void) &_init; /* Don't optimize out the function! */ @@ -74,7 +67,7 @@ asm ("\nEOF.crtn.init\ \n\ cat >> crti.s-new <<\\EOF.crti.fini"); -GLOBAL void +void _fini (void) { (void) &_fini; /* Don't optimize out the function! */ diff --git a/stdio/vfscanf.c b/stdio/vfscanf.c index cdfedc2..6eacc2b 100644 --- a/stdio/vfscanf.c +++ b/stdio/vfscanf.c @@ -36,7 +36,7 @@ Cambridge, MA 02139, USA. */ #define inchar() ((c = getc(s)) == EOF ? EOF : (++read_in, c)) -#define conv_error() return ((c == EOF || ungetc(c, s)), done) +#define conv_error() return (ungetc(c, s), done) #define input_error() return (done == 0 ? EOF : done) #define memory_error() return ((errno = ENOMEM), EOF) |