"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.
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.
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.
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)
# 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
#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. */
/* 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! */
\n\
cat >> crti.s-new <<\\EOF.crti.fini");
-GLOBAL void
+void
_fini (void)
{
(void) &_fini; /* Don't optimize out the function! */
#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)