re PR java/6085 (gcj SEGVs on complicated inner class structures)
Fix for PR java/6085:
* parse.y (patch_method_invocation): Always use build_access_to_thisn
to get enclosing "this" argument for inner-class constructor
invocation. Pass correct arguments to build_access_to_thisn.
stmt.c (check_unique_operand_names): Expect operand names to be strings rather than identifiers.
* stmt.c (check_unique_operand_names): Expect operand names to
be strings rather than identifiers. Use simple_cst_equal to
compare them.
(resolve_operand_name_1): Make same identifier to string change here.
* c-parse.in (asm_operand): Convert a named operand into a string.
* cp/parse.y (asm_operand): Likewise.
Mark Mitchell [Sat, 13 Apr 2002 01:25:27 +0000 (01:25 +0000)]
Revert these changes:
2002-04-06 Mark Mitchell <mark@codesourcery.com>
PR c++/5571
* stor-layout.c (layout_decl): Reset the RTL for the decl.
* decl.c (duplicate_decls): Do not copy the RTL for a variable
declaration if the old variable had an incomplete type and the new
variable does not.
(complete_vars): Do not call layout_decl for completed variables.
Steve Ellcey [Fri, 12 Apr 2002 22:31:27 +0000 (22:31 +0000)]
* gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
(strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
does not define strtoll or strtoull, but does define strtol
and strtoul which are the same since in 64 bit mode
sizeof(long) == sizeof(long long).
Phil Edwards [Fri, 12 Apr 2002 19:15:59 +0000 (19:15 +0000)]
std_bitset.h: Doxygenate std::bitset<>.
2002-04-12 Phil Edwards <pme@gcc.gnu.org>
* include/std/std_bitset.h: Doxygenate std::bitset<>. Clean up
trailing spaces, indentation, and macro names. Make exception
messages more informative.
Andreas Schwab [Fri, 12 Apr 2002 14:41:01 +0000 (14:41 +0000)]
ia64.h (ASM_SPEC): Moved from here ...
* config/ia64/ia64.h (ASM_SPEC): Moved from here ...
* config/ia64/sysv4.h (ASM_SPEC): ... to here, so that it
overrides the definition in config/svr4.h.
Eric Norum [Fri, 12 Apr 2002 13:35:03 +0000 (13:35 +0000)]
rtems.h, [...] (*-rtems*): Cleanup pass to move common definitions to config/rtems.h and make the targets...
2002-04-12 Eric Norum <eric.norum@usask.ca>
* config/rtems.h, config/a29k/rtems.h, config/arm/rtems-elf.h,
config/c4x/rtems.h, config/h8300/rtems.h, config/i386/rtems.h,
config/i386/rtemself.h, config/i960/rtems.h, config/m68k/rtems.h,
config/m68k/rtemself.h, config/mips/rtems.h, config/mips/rtems64.h,
config/pa/rtems.h, config/rs6000/rtems.h, config/sh/rtems.h,
config/sh/rtemself.h, config/sparc/rtems.h, config/sparc/rtemself.h,
config/v850/rtems.h (*-rtems*): Cleanup pass to move common
definitions to config/rtems.h and make the targets more similar.
decl.c (duplicate_decls): Don't try to unify an implicit typedef with an explicit one.
* decl.c (duplicate_decls): Don't try to unify an implicit typedef
with an explicit one.
(follow_tag_typedef): New.
(lookup_tag): Use it to extract the tag of an explicit typedef.
(xref_tag): Likewise.
Andrew Haley [Fri, 12 Apr 2002 09:08:17 +0000 (09:08 +0000)]
typeck.c (type_after_usual_arithmetic_conversions): If two types have the same variant, return immediately.
2002-04-11 Andrew Haley <aph@redhat.com>
* typeck.c (type_after_usual_arithmetic_conversions):
If two types have the same variant, return immediately.
When two floating-point operands are the same precision:
convert to float if one of the operands is float;
if neither operand is one of the standard types, return the type
of the first operand.
pa.c (pa_output_function_prologue): Don't accumulate the total number of code bytes when using TARGET_64BIT...
* pa.c (pa_output_function_prologue): Don't accumulate the total
number of code bytes when using TARGET_64BIT, or gas, SOM and not
the portable runtime.
(output_deferred_plabels): Handle 64bit plabels.
(output_cbranch): Use $PIC_pcrel$0 for pc relative relocations when
generating pic code using the GAS assembler for object formats that
are not SOM (ie., ELF32 and ELF64).
(output_millicode_call): Check attribute type if attribute length is 28.
Likewise use $PIC_pcrel$0. Only call get_attr_length and
dbr_sequence_length once.
(output_call): Likewise use $PIC_pcrel$0, and call get_attr_length and
dbr_sequence_length once.
* pa.h (TARGET_SOM): Define if not defined.
* pa.md (pattern to load address of label): Likewise use $PIC_pcrel$0
with GAS and not SOM.
(jump, call_internal_reg, call_value_internal_reg): Likewise.
* som.h (OBJ_SOM): Rename to TARGET_SOM. Undefine before defining.
David O'Brien [Fri, 12 Apr 2002 01:18:38 +0000 (01:18 +0000)]
freebsd.h (NO_IMPLICIT_EXTERN_C, [...]): Give value.
2002-04-11 David O'Brien <obrien@FreeBSD.org>
* config/freebsd.h (NO_IMPLICIT_EXTERN_C, SCCS_DIRECTIVE): Give value.
(DEFAULT_PCC_STRUCT_RETURN) Do not redefine.
(USER_LABEL_PREFIX, HANDLE_SYSV_PRAGMA, IDENT_ASM_OP,
DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE):
elfos.h and dbxelf.h values are fine now.
* config/i386/freebsd.h, config/alpha/freebsd.h
(DEFAULT_PCC_STRUCT_RETURN): Define to 0.
Approved by: Richard Henderson <rth@redhat.com>
Message-ID: <20020411175216.B11442@redhat.com>
configure.host: Set can_unwind_signal on hosts which support it.
* configure.host: Set can_unwind_signal on hosts which support it.
Don't set CHECKREFSPEC and DIVIDESPEC for FreeBSD.
* configure.in: Set CHECKREFSPEC and DIVIDESPEC if not using SJLJ
exceptions and can_unwind_signal isn't set.
* configure: Rebuilt.
David O'Brien [Fri, 12 Apr 2002 01:08:20 +0000 (01:08 +0000)]
aix.h (CPP_PREDEFINES): Do not define _LP64/__LP64__ or set Acpu or Amachine.
2002-04-11 David O'Brien <obrien@FreeBSD.org>
* config/ia64/aix.h (CPP_PREDEFINES): Do not define _LP64/__LP64__
or set Acpu or Amachine. Reformat.
(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
define.
(LINK_SPEC): Do not need to undef.
* config/ia64/elf.h (ASM_EXTRA_SPEC): Define.
* config/ia64/freebsd.h (LINK_SPEC): Do not need to undef.
(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
define.
* config/ia64/hpux.h (ASM_EXTRA_SPEC): Define.
(ASM_SPEC): Do not define, use ASM_EXTRA_SPEC instead.
(LINK_SPEC): Do not need to undef.
(DONT_USE_BUILTIN_SETJMP): Do not define.
* config/ia64/ia64.h (ASM_SPEC, ASM_EXTRA_SPEC): Add.
(CPP_CPU_SPEC): Define _LP64, set Acpu and Amachine. Remove -Dia64.
(DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Define.
Remove trailing spaces.
* config/ia64/linux.h (CPP_PREDEFINES): Do not define _LP64/__LP64__,
__ELF__, or set Acpu or Amachine. Reformat.
(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
define.
Approved by: Richard Henderson <rth@redhat.com>
Message-ID: <20020411160138.A11250@redhat.com>
David O'Brien [Thu, 11 Apr 2002 23:25:54 +0000 (23:25 +0000)]
config.gcc (alpha*-*-openbsd, [...]): Include {cpu}/{cpu}.h thru tm_file.
2002-04-11 David O'Brien <obrien@FreeBSD.org>
* config.gcc (alpha*-*-openbsd, alpha64-dec-*vms,alpha*-dec-*vms):
Include {cpu}/{cpu}.h thru tm_file.
(alpha*-*-linux*ecoff): Remove target.
* config/alpha/elf.h (CPP_SUBTARGET_SPEC): Define __ELF__.
(LINK_SPEC): Remove, is not OS independent.
* config/alpha/freebsd.h (CPP_SPEC): Do not define __ELF__.
(LINK_SPEC): Do not need to #undef any longer.
* config/alpha/linux-ecoff.h (LINK_SPEC): Do not need to #undef
any longer.
* config/alpha/linux-elf.h (SUB_CPP_PREDEFINES): Do not define
__ELF__.
(LINK_SPEC): Moved here from alpha/elf.h.
* config/alpha/linux.h (CPP_PREDEFINES): No longer consumer of
SUB_CPP_PREDEFINES.
* config/alpha/linux-ecoff.h: Remove.
* config/alpha/netbsd.h (CPP_PREDEFINES): Do not define __ELF__.
(CPP_SPEC): Define _POSIX_SOURCE as needed.
(CPP_SUBTARGET_SPEC): Do not define.
(LINK_SPEC): Do not need to #undef any longer.
* config/alpha/openbsd.h: Do not directly include alpha/alpha.h.
* config/alpha/vms.h: Likewise.
Approved by: Richard Henderson <rth@redhat.com>
Message-ID: <20020411152309.A11121@redhat.com>
Message-ID: <20020411160159.B11250@redhat.com>
Jason R Thorpe <thorpej@wasabisystems.com>
Message-ID: <20020411161434.I4954@dr-evil.shagadelic.org>
David O'Brien [Thu, 11 Apr 2002 18:11:53 +0000 (18:11 +0000)]
freebsd.h: Minor reformatting.
2002-04-10 David O'Brien <obrien@FreeBSD.org>
* config/alpha/freebsd.h: Minor reformatting.
(CPP_SPEC): Define ELF and add cpp_subtarget.
(ASM_SPEC): No longer needed.
Approved by: David S. Miller <davem@redhat.com>
Message-Id: <20020410.203814.109035383.davem@redhat.com>
Adam King [Thu, 11 Apr 2002 15:57:56 +0000 (15:57 +0000)]
jvm.h (_Jv_ThrowBadArrayIndex, [...]): Mark as noreturn.
2002-04-11 Adam King <aking@dreammechanics.com>
Tom Tromey <tromey@redhat.com>
* include/jvm.h (_Jv_ThrowBadArrayIndex,
_Jv_ThrowNullPointerException): Mark as noreturn.
* win32.cc (_Jv_platform_initProperties): Use _Jv_MallocUnchecked
and _Jv_free. Correctly invoke GetTempPath(). Indentation
fixes.
Co-Authored-By: Tom Tromey <tromey@redhat.com>
From-SVN: r52164
c-decl.c (c_init_decl_processing): Move generation of decls for g77_integer_type_node and friends from here ...
2002-04-10 Toon Moene <toon@moene.indiv.nluug.nl>
* c-decl.c (c_init_decl_processing): Move generation of
decls for g77_integer_type_node and friends from here ...
* c-common.c (c_common_nodes_and_builtins): ... to here.
Richard Earnshaw [Wed, 10 Apr 2002 14:06:38 +0000 (14:06 +0000)]
re PR target/817 (ARM compiler generates out-of-range accesses to constant pool data)
PR target/817
* arm.md (arm_movdi): Adjust neg_pool_range attribute to allow
for the fact that the pool entry uses two words.
(movdf_hard_insn): Similarly. Also, ADR instruction can span
1k bytes.
(movdf_soft_insn): Similarly.
(movxf_hard_insn): Adjust neg_pool_range attribute to allow
for the fact that the pool entry uses three words.
mips.c (mips_va_arg): When using the struct version of the EABI va_list...
* config/mips/mips.c (mips_va_arg): When using the struct version
of the EABI va_list, allow arguments in the register save area to
take up less room than a stack argument.