2000-10-21 Mike Coleman <mcoleman2@kc.rr.com>
* c-pragma.c (handle_pragma_pack): Initialize align to -1.
Improve error messages. Correct parsing of
#pragma pack(pop [,id]). Do not check the user-supplied
alignment if we're popping.
* gcc.dg/pack-test-1.c: New test case.
* gcc.dg/pack-test-2.c: New test case.
* gcc.dg/pack-test-1.h: New file.
From-SVN: r37095
* invoke.texi: Document -frename-registers. Add it to -O3.
* toplev.c (rest_of_compilation): Run regrename before ifcvt2.
(enum dump_file_index, dump_file): Update order.
(main): Set flag_rename_registers at -O3.
From-SVN: r37092
* configure.in: If not NO_MINUS_C_MINUS_O, substitute
OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to
top level. Kill oldstyle_subdirs. Do not include
$srcdir/$s/Makefile.in in all_lang_makefiles, but do include
$outputs. Do not run configure.lang from config.status.
Rearrange warning-flag logic to correspond to what the
makefile wants. Put special vax stage1 options in
@stage1_flags@ not @stage1_warn_cflags@. Don't do anything
with extra_c_objs, extra_cxx_objs, or extra_cpp_objs.
(--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if
switch is given, nothing otherwise.
* configure.lang: Delete.
* Makefile.in: Expunge all traces of extra_c_objs,
extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from
@maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set
warning options via a three level scheme so that -pedantic and
-Wtraditional are not used for non-C front ends: LOOSE_WARN,
STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS ->
WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS.
Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES.
Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P,
LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file
generation rules. Wrap all rules that change the current
directory in parentheses; pmake doesn't spawn a new shell for
each command. Expunge all references to $(P). When one
command depends on another and they're run all at once, use &&
to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files
deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2
and beyond.
* cp/Make-lang.in, f/Make-lang.in, java/Make-lang.in,
objc/Make-lang.in: Wrap all rules that change the current
directory in parentheses. Expunge all references to $(P).
When one command depends on another and they're run all at
once, use && to separate them, not ;. Add OUTPUT_OPTION to
all object-file generation rules. Delete obsolete variables.
Move all build rules here from the corresponding Makefile.in and
adapt to the new environment.
* cp/Makefile.in, f/Makefile.in, java/Makefile.in, objc/Makefile.in:
Delete.
* cp/config-lang.in, f/config-lang.in, java/config-lang.in:
Delete outputs= line.
From-SVN: r37088
* calls.c (expand_call): If sibcall_failure is set during pass 1,
clear tail_call_insns as well.
* g++.old-deja/g++.other/eh2.C: New test.
From-SVN: r37087
2000-10-26 Benjamin Kosnik <bkoz@redhat.com>
* include/c/bits/std_cmath.h: Fix double declarations in namespace std.
Clean up naming, consistency in "C" library autoconf testing.
* acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
GLIBCPP_CHECK_CTYPE_SUPPORT.
(GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
* aclocal.m4: Regenerate.
* configure.in: And here.
Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
* configure: Regenerate.
2000-10-26 David Edelsohn <edelsohn@gnu.org>
* acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
(GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.
From-SVN: r37083
2000-10-26 Phil Edwards <pme@sources.redhat.com>
David Edelsohn <dje@watson.ibm.com>
* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
--gc-sections stuff entirely to avoid misleading people.
(GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
* libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
Rearrange and merge.
* libio/libio.h: Simplify, make fewer assumptions. Define those
macros which must be defined.
* config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
result.
From-SVN: r37082
* Makefile.am: Added locale files from Classpath.
* Makefile.in: Rebuilt.
* gnu/java/locale/Calendar.java: New file.
* gnu/java/locale/Calendar_de.java: New file.
* gnu/java/locale/Calendar_en.java: New file.
* gnu/java/locale/Calendar_nl.java: New file.
* java/lang/ClassNotFoundException.java: Replaced with Classpath file.
* java/math/BigDecimal.java (intVal): Renamed from 'num' for
serialization compatibility.
(scale): Made private.
(serialVersionUID): New field.
* java/math/BigInteger.java (ival): Made transient.
(words): Made transient.
(bitCount): New serialization field.
(bitLength): Ditto.
(firstNonzeroByteNum): Ditto.
(lowestSetBit): Ditto.
(magnitude): Ditto.
(signum): Ditto.
(serialVersionUID): New field.
(readObject): New method.
(writeObject): New method.
* java/util/BitSet.java (serialVersionUID): New field.
* java/util/Calendar.java: Replaced with Classpath file.
* java/util/GregorianCalendar.java (GregorianCalendar): Pass result
of getDefault() for TimeZone or Locale instead of passing nulls.
* java/util/Locale.java (serialVersionUID): New field.
(writeObject): New method.
(readObject): New method.
* java/util/SimpleTimeZone.java: Replaced with Classpath file.
Serialization mods.
From-SVN: r37080
* tree.c (make_node, case 't'): Set alignment to that of
char_type_node.
* expr.c (move_by_pieces_ninsns): Abort if some length remains.
From-SVN: r37071
* Makefile.in (site.exp): Define HAVE_LIBSTDCXX_V3.
* configure.in (enable-libstdcxx-v3): Arrange to have
HAVE_LIBSTDCXX_V3 substituted into the output files.
* lib/g++.exp (g++_include_flags): Trust HAVE_LIBSTDCXX_V3
to tell us whether or not we are using V3.
* Makefile.in (check): Don't make mkcheck executable.
(check-install): Likewise.
* configure.in (AC_OUTPUT): Make mkcheck executable.
* mkcheck.in (top_srcdir): New variable.
(INC_PATH): Set the path to the backward and ext directories
correctly.
From-SVN: r37068
cp/
* error.c (dump_function_decl): Print no space between
`ptr-operator' the `type-specifier' of the return type.
(dump_type_prefix): Make sure we put space at the appropriate
place.
testuite/g++.old-deja/g++.pt/
* g++.old-deja/g++.pt/memtemp77.C (main): Adjust comparaison
operands.
From-SVN: r37067
* lex.c (java_new_lexer): Initialize new fields. Work around
broken iconv() implementations.
(java_read_char): Swap bytes if required. Use fallback decoder if
required.
(byteswap_init, need_byteswap): New globals.
(java_destroy_lexer): Only close iconv handle if it is in use.
* lex.h (java_lexer): New fields read_anything, byte_swap,
use_fallback.
Made out_buffer unsigned.
From-SVN: r37063
2000-10-25 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am (GCJCOMPILE): Pass --tag=GCJ to libtool.
(core_java_source_files): Put java.lang, java.io, and java.util here.
(ordinary_java_source_files): Order so that core_java_source_files are
built first.
(java_source_files): Reorder so that special_java_source_files are
built first.
* configure.in: Don't pass -I flag to gcj.
* Makefile.in: Rebuilt.
* configure: Rebuilt.
From-SVN: r37060
* c-decl.c (grokdeclarator): Move warning for qualified void
return types with -pedantic to when the function type is
constructed. At -W, warn in general for qualified function return
types, except for volatile void.
* invoke.texi: Document this new warning at -W.
testsuite:
* gcc.dg/qual-return-1.c, gcc.dg/qual-return-2.c: New tests.
From-SVN: r37056
2000-10-23 Diego Novillo <dnovillo@cygnus.com>
* i386.c (print_operand): Handle new 'A' formatting code.
387 opcodes need suffixes even with -mintel-syntax.
Check for explicit size override (codes 'b', 'w' and 'k').
(print_operand_address): Check if register prefix is needed when
emitting `ds' segment override.
* i386.h: Add comment about new 'A' formatting code.
* i386.md (jump and call patterns): Emit absolute references using %A.
From-SVN: r37055
2000-10-25 Phil Edwards <pme@sources.redhat.com>
* configure.in: Check for gconv.h.
* libio/wfileops.c: Wrap gconv.h in HAVE_GCONV_H.
* config/c_io_libio_codecvt.c: Change __mbstate_t to __c_mbstate_t.
* libio/_G_config.h: And here.
* libio/iofwide.c: And here.
* libio/libio.h: And here.
* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Remove
exception specification to match declaration.
* include/bits/locale_facets.tcc: Include bits/std_clocale.h.
From-SVN: r37053
* stor-layout.c (layout_type): If TYPE_ALIAS_SET was already set on the
incomplete type force it into alias set 0.
* gcc.c-torture/execute/20001024-1.c: New test.
From-SVN: r37052
2000-10-24 Mark Harig <mharig@landmark.com>
* docs/configopts.html: Added documentation for the
"--enable-version-specific-runtime-libs" and
"--with-gxx-include-dir" configuration switches.
From-SVN: r37051
2000-10-24 Phil Edwards <pme@sources.redhat.com>
* acconfig.h: List _GLIBCPP_USE_THREADS.
* acinclude.m4: General formatting cleanup (tabs/spaces), typo
correction, etc. Add comments about following *real* changes
where they are used.
(GLIBCPP_ENABLE_C_MBCHAR): New test...
(GLIBCPP_CHECK_WCHAR_T_SUPPORT): ...results used here.
(GLIBCPP_ENABLE_CSTDIO): Define need_wlibio iff wide characters
are requested.
(GLIBCPP_ENABLE_THREADS): If threads are used, define new
macro _GLIBCPP_USE_THREADS in c++config.h.
(GLIBCPP_ENABLE_SHADOW): For C_INCLUDE_DIR, change () to {} as
this is used in both makefiles and shell scripts (mkcheck).
* configure.in: Call GLIBCPP_ENABLE_C_MBCHAR.
* libio/_G_config.h: Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
* config/c_io_libio.h: In nonthreaded case, typedef __c_lock to
something harmless, like int.
* config/os/aix/bits/os_defines.h: Guard with _GLIBCPP_OS_DEFINES,
add comment/instructions.
* config/os/bsd/bits/os_defines.h: Ditto.
* config/os/generic/bits/os_defines.h: Ditto.
* config/os/gnu-linux/bits/os_defines.h: Ditto.
* config/os/irix/bits/os_defines.h: Ditto.
* config/os/newlib/bits/os_defines.h: Ditto.
* config/os/solaris/solaris2.5/bits/os_defines.h: Ditto.
* config/os/solaris/solaris2.6/bits/os_defines.h: Ditto.
* mkcheck.in: Limit the available heap size for testsuite
binaries, initially at 2MB.
From-SVN: r37050