Denis Chertykov [Fri, 24 Nov 2000 20:02:40 +0000 (20:02 +0000)]
avr.c (out_tsthi,out_tstsi): Test simplification bug fixed.
* config/avr/avr.c (out_tsthi,out_tstsi): Test simplification bug
fixed.
(machine_dependent_reorg): Wrong optimization based on
NOTICE_UPDATE_CC removed.
Nathan Sidwell [Fri, 24 Nov 2000 10:30:46 +0000 (10:30 +0000)]
c-parse.in (unary_expr): Move VA_ARG from here ...
* c-parse.in (unary_expr): Move VA_ARG from here ...
(primary): ... to here.
cp:
* parse.y (unary_expr): Move VA_ARG from here ...
(primary): ... to here.
testsuite:
* g++.old-deja/g++.other/vaarg4.C: New test.
* gcc.c-torture/compile/20001123-1.c: New test.
Nathan Sidwell [Fri, 24 Nov 2000 09:56:27 +0000 (09:56 +0000)]
semantics.c (finish_id_expr): If type is error_mark, return error_mark.
cp:
* semantics.c (finish_id_expr): If type is error_mark, return
error_mark.
testsuite:
* g++.other/crash24.C: Adjust and remove XFAIL.
* g++.other/crash37.C: New test.
cp:
* pt.c (lookup_template_class): Simplify loop exit constructs.
Cope when there is no partial instantiation of a template
template member.
testsuite:
* g++.old-deja/g++.pt/instantiate9.C: New test.
Alexandre Oliva [Thu, 23 Nov 2000 13:23:04 +0000 (13:23 +0000)]
emit-rtl.c (gen_lowpart_common): Use word 0 if register mode is narrower than requested mode.
* emit-rtl.c (gen_lowpart_common): Use word 0 if register mode
is narrower than requested mode.
(gen_highpart): Abort if register mode is narrower than
requested mode.
* config/os/gnu-linux/bits/os_defines.h: Include <features.h>.
If not glibc 2.1 or higher, include <gnu/types.h> and define
__off64_t as __loff_t and #define __THROW as empty.
* libio/libio.h [__P]: Move __THROW and __PMT into their own
ifndef:s.
Benjamin Kosnik [Thu, 23 Nov 2000 06:46:31 +0000 (06:46 +0000)]
Make deprecated strstream header consistent with new and new.h.
2000-11-22 Benjamin Kosnik <bkoz@redhat.com>
Make deprecated strstream header consistent with new and new.h.
* include/backward/strstream.h: Add. Use using declarations to
scope strstreambuf, istrstream, ostrstream, strstream to global
scope.
* include/backward/strstream: Remove using declarations.
* src/Makefile.am (base_headers): Add strstream.
* src/Makefile.in: Regenerate.
* include/backward/new.h (_CPP_BACKWARD_NEW_H): Change macro guard
to be consistent with other headers.
Alexandre Oliva [Thu, 23 Nov 2000 06:37:23 +0000 (06:37 +0000)]
final.c (output_addr_const): Simplify.
* final.c (output_addr_const) [LABEL_REF]: Simplify.
[MINUS]: Enclose non-CONST_INTs in parentheses.
[default]: Try OUTPUT_ADDR_CONST_EXTRA.
* tm.texi (OUTPUT_ADDR_CONST_EXTRA): Document it.
* varasm.c (decode_rtx_const) [CONST]: If it's not something
PLUS or MINUS a CONST_INT, use the whole CONST with offset 0
instead of abort()ing.
* sh.c (output_pic_addr_const): Removed. Fixed all callers.
* sh.h (OUTPUT_ADDR_CONST_EXTRA): New. Handle the UNSPECs
formerly handled in output_pic_addr_const.
* sh.md (sym_label2reg, symPLT_label2reg): Enclose UNSPEC
operands of MINUS in CONSTs so that decode_rtx_const() will
accept them.
Alexandre Oliva [Thu, 23 Nov 2000 06:20:16 +0000 (06:20 +0000)]
sh.md (mova_const): New pattern.
* config/sh/sh.md (mova_const): New pattern.
(GOTaddr2picreg): Use it.
* config/sh/sh.c (broken_move): Match it.
(mova_p): Don't match it.
(machine_dependent_reorg): Adjust it.
* parse.y (build_outer_field_access): New local `decl_ctx', use
it. Check for field's context and current class immediate outer
context inheritance.
(outer_field_access_p): Consider fields inherited from the last
enclosing context.
(build_access_to_thisn): Stop at the last enclosing context if
necessary.
Fixes gcj/367.
Bryce McKinlay [Thu, 23 Nov 2000 05:18:41 +0000 (05:18 +0000)]
Vector.java: Improve exception messages.
2000-11-23 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/Vector.java: Improve exception messages.
(Vector): Check initialCapacity for IllegalArgumentException.
(tromToSize): Don't check for elementCount == elementData.length
case.
(toArray): Don't try to set null marker if target array is the same
length as the vector.
Alexandre Oliva [Thu, 23 Nov 2000 04:22:48 +0000 (04:22 +0000)]
sh.h (FIRST_GENERAL_REG, [...]): New.
* config/sh/sh.h (FIRST_GENERAL_REG, LAST_GENERAL_REG): New.
Moved most register-number #defines...
* config/sh/sh.md (define_constants): ... here. Use macros to
refer to registers and unspecs.
* config/sh/sh.c: Likewise.
Benjamin Kosnik [Thu, 23 Nov 2000 03:25:47 +0000 (03:25 +0000)]
Make deprecated strstream header consistent with new and new.h.
2000-11-22 Benjamin Kosnik <bkoz@redhat.com>
Make deprecated strstream header consistent with new and new.h.
* include/backward/strstream.h: Add. Use using declarations to
scope strstreambuf, istrstream, ostrstream, strstream to global
scope.
* include/backward/strstream: Remove using declarations.
* src/Makefile.am (base_headers): Add strstream.
* src/Makefile.in: Regenerate.
* include/backward/new.h (_CPP_BACKWARD_NEW_H): Change macro guard
to be consistent with other headers.
Neil Booth [Wed, 22 Nov 2000 19:17:14 +0000 (19:17 +0000)]
gcc.c (validate_switches): Validate multiple switches named in '|' (or) expressions in specs.
* gcc.c (validate_switches): Validate multiple switches named
in '|' (or) expressions in specs.
(handle_braces): If more than 1 alternative in a '|' spec
matches, call do_spec1 just once.
Loren J. Rittle [Wed, 22 Nov 2000 18:31:25 +0000 (18:31 +0000)]
ltcf-cxx.sh: Support creation of C++ shared libraries on recent versions of FreeBSD (release...
2000-11-22 Loren J. Rittle <ljrittle@acm.org>
* ltcf-cxx.sh: Support creation of C++ shared libraries on
recent versions of FreeBSD (release 3 or later).
* ltconfig: On FreeBSD, -lc must not be provided when building
a shared library or else the standard -pthread gcc option is
rendered worthless to later users of the built library.
Zack Weinberg [Wed, 22 Nov 2000 08:32:26 +0000 (08:32 +0000)]
Makefile.in, [...]: Expunge remaining traces of facility for running MD files through C preprocessor.
gcc:
* Makefile.in, config.gcc, configure.in: Expunge remaining
traces of facility for running MD files through C preprocessor.
libiberty:
* aclocal.m4 (LIB_AC_PROG_CC): Moved here from configure.in.
(AC_DEFINE_NOAUTOHEADER): New - work around bug in autoheader.
* configure.in: Call AC_C_INLINE and AC_C_CONST. Use three
argument form of AC_DEFINE in dummy definitions block. Use
AC_DEFINE_NOAUTOHEADER for real definitions of things defined
in dummy block. Preload cache variables instead of bypassing
tests, where possible.
* acconfig.h: Removed.
* xmalloc.c (xmalloc_failed): New function, does error
reporting on failed allocation.
(xmalloc, xcalloc, xrealloc): Use it.
* libiberty.h: Move #includes to top. Prototype xmalloc_failed.
* parse.y (outer_field_access_p): Inherited fields aren't
consider outer fields.
(maybe_build_thisn_access_method): Use
PURE_INNER_CLASS_TYPE_P instead of INNER_CLASS_TYPE_P.
(resolve_expression_name): Trigger an error if a static field
is being accessed as an outer field.
Mike Stump [Wed, 22 Nov 2000 02:34:18 +0000 (02:34 +0000)]
fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow compilation with older compilers, such as /bin/cc on SunOS.
* fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow
compilation with older compilers, such as /bin/cc on SunOS.
* fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto.
Fix build errors on SunOS 4.1.4.
Mike Stump [Wed, 22 Nov 2000 02:23:40 +0000 (02:23 +0000)]
fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow compilation with older compilers, such as /bin/cc on SunOS.
* fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow
compilation with older compilers, such as /bin/cc on SunOS.
* fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto.
Fix one problem with bootstrap on SunOS 4.1.4 system.
* lib/gcc-dg.exp: load_lib scanasm.exp.
(scan-assembler, scan-assembler-not): Break out to scanasm.exp.
* lib/g++-dg.exp: load_lib scanasm.exp.
* lib/scanasm.exp: New.
(scan-assembler, scan-assembler-not): Add optional arguments to
test name, or if not present, the pattern name.
(scan-assembler-dem, scan-assembler-demnot): New.
Branko Cibej [Tue, 21 Nov 2000 21:58:28 +0000 (21:58 +0000)]
os_defines.h: Define _XOPEN_SOURCE...
2000-11-21 Branko Cibej <brankoe@xbc.nu>
* config/os/solaris/solaris2.6/bits/os_defines.h: Define
_XOPEN_SOURCE, _LARGEFILE64_SOURCE, __EXTENSIONS__, __off_t,
__off64_t and __ssize_t.
* config/os/solaris/solaris2.5/bits/os_defines.h: For now, use the
same configuration as above.
* c-common.c (c_unsafe_for_reeval): New function.
(add_c_tree_codes): Register it.
* c-common.h: Declare it.
* tree.c (lang_unsafe_for_reeval): New hook.
(unsafe_for_reeval): Call it.
* tree.h: Declare it.