Jakub Jelinek [Fri, 28 Dec 2001 09:51:20 +0000 (10:51 +0100)]
c-typeck.c (store_init_value): If initializing object with array type of unknown size by a compound literal...
* c-typeck.c (store_init_value): If initializing object with array
type of unknown size by a compound literal, set object's size from
compound literal size.
* doc/extend.texi (Compound Literals): Adjust documentation.
* gcc.dg/gnu89-init-1.c: Adjust for the new behaviour, add some
additional tests.
* real.c (etoe113, toe113): Ifndef INTEL_EXTENDED_IEEE_FORMAT.
(endian): Clear word 3 for INTEL_EXTENDED_IEEE_FORMAT.
(etartdouble): Invoke etoe64 for INTEL_EXTENDED_IEEE_FORMAT.
* real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Don't special case
INTEL_EXTENDED_IEEE_FORMAT.
* haifa-sched.c (reemit_other_notes): New.
(schedule_block): Use it.
* sched-ebb.c (schedule_ebbs): Call remove_unnecessary_notes.
* sched-rgn.c (schedule_insns): Likewise.
* cfglayout.c (remove_scope_notes): Handle removing note at
the end of the insn chain.
* function.c (debug_find_var_in_block_tree): New.
* include/bits/stl_iterator.h (reverse_iterator): Uglify member
current to _M_current.
(back_insert_iterator): Ulify member container to _M_container.
(front_insert_iterator): Same.
(insert_iterator): Same.
Nathan Sidwell [Wed, 26 Dec 2001 20:33:37 +0000 (20:33 +0000)]
re PR c++/196 (problem with: namespace N { class N {...}; })
cp:
PR c++/196
* cp/parse.y (bad_parm): Better diagnostic when given a SCOPE_REF.
testsuite:
* g++.dg/eh/ctor1.C: New test.
* g++.dg/other/error2.C: New test.
Gabriel Dos Reis [Tue, 25 Dec 2001 13:53:56 +0000 (13:53 +0000)]
std_limits.h (__glibcpp_xxx_is_modulo): New macros for signed types; default value is true.
* include/bits/std_limits.h (__glibcpp_xxx_is_modulo): New
macros for signed types; default value is true.
(numeric_limits<>::is_modulo): Get value from corresponding
__glibcpp_xxx_is_modulo macro.
Nathan Sidwell [Mon, 24 Dec 2001 20:52:36 +0000 (20:52 +0000)]
re PR c++/160 (Reference variables not initialized correctly in constructor initializer list using , operator)
cp:
PR c++/160
* typeck.c (build_modify_expr): Remove old unreachable code & tidy
up. Don't stabilize_references when initializing a reference.
testsuite:
* g++.dg/other/init2.C: New test.
re PR debug/5163 (Internal compiler error in add_abstract_origin_attribute, at dwarf2out.c:9296)
PR c/5163:
* c-decl.c (duplicate_decls): As needed, set DECL_INLINE when
we have a function body associated. Minor cleanups.
(grokdeclarator): Do not set DECL_INLINE without a function body.
stmt.c (parse_input_constraint): Break out from ...
* stmt.c (parse_input_constraint): Break out from ...
(expand_asm_operands): ... here. Loop over the operands twice,
the first time only calling mark_addressable. Correct and simplify
the conditions for spilling an output operand to memory.
Jeff Law [Mon, 24 Dec 2001 01:45:29 +0000 (18:45 -0700)]
os_defines.h: Do not include <_sys/inttypes.h>.
* config/os/hpux/bits/os_defines.h: Do not include <_sys/inttypes.h>.
Twiddle return types for strtoll and strtoull to avoid using
intmax_t and uintmax-t.
calls.c (expand_call): Don't turn off ECF_LIBCALL_BLOCK for an invalid result register...
* calls.c (expand_call): Don't turn off ECF_LIBCALL_BLOCK for
an invalid result register; do end the sequence properly.
(emit_library_call_value_1): Likewise.
* gnat-style.texi (header): Add @dircategory, @direntry.
(title page): Remove date.
(general) Add @./@: where approriate, and two spaces after the
full stop at the end of a sentence. Use @samp markup when
referring concrete lexical entities (keywords, attribute names
etc.), and @syntax for ARM grammar elements. Use @r for English
text in comments. Use @emph for emphasis. Change "if-statements"
etc. to "if statements" (without @samp). Break long lines. Make
casing of section names consistent.
(Identifiers): Use @samp markup for variable names.
(Comments): Use @samp markup for comment characters. Line-end
comments may follow any Ada code, not just statements. Fix
misspelling of "Integer" as "integer".
(Loop statements): Do not use variable name "I", use "J".
(Subprogram Declarations): Document alignment.
(Subprogram Bodies, Block statements): Document empty line before
"begin".
* config/rs6000/rs6000.c: Clean up some spacing and indentation.
(altivec_init_builtins): Add tree types for builtins with 4 bit
literals.
(bdesc_3arg): Add vsldoi variants.
Joseph Myers [Sat, 22 Dec 2001 21:07:33 +0000 (21:07 +0000)]
config.gcc (extra_headers): Move settings to math-68881.h and ppc-asm.h to common code for CPU types.
* config.gcc (extra_headers): Move settings to math-68881.h and
ppc-asm.h to common code for CPU types. Use math-68881.h on all
m68k targets.
(header_files): Remove unused setting.
Richard Kenner [Sat, 22 Dec 2001 15:06:55 +0000 (15:06 +0000)]
expr.c (expand_expr, [...]): Handling taking address of SAVE_EXPR.
* expr.c (expand_expr, case ADDR_EXPR): Handling taking address of
SAVE_EXPR.
* function.c (gen_mem_addressof): Add missing tests for SAVE_EXPR.
(put_addressof_into_stack): Clarify code in setting of used_p.
Florian Weimer [Sat, 22 Dec 2001 11:58:51 +0000 (12:58 +0100)]
make.adb (Add_Switch): Make Generic_Position a procedure.
* make.adb (Add_Switch): Make Generic_Position a procedure. The
function approach did not work well because of a side effect (the
function call could reallocate the table which was being indexed
using its result). Fixes ada/4851.
Jeff Law [Sat, 22 Dec 2001 00:42:46 +0000 (17:42 -0700)]
os_defines.h: Include <sys/_inttypes.h.
* config/os/hpux/bits/os_defines.h: Include <sys/_inttypes.h.
Define strtoll and strtoull. Provide prototypes for
__strtoll and __strtoull. Define _GLIBCPP_USE_LONG_LONG
unconditionally.
Tom Tromey [Fri, 21 Dec 2001 19:47:50 +0000 (19:47 +0000)]
re PR libgcj/2428 (Classloader is not set)
Fix for PR libgcj/2428:
* java/lang/natClass.cc: Include RuntimePermission.h.
(getClassLoader): Define.
* java/lang/Class.h (Class.getClassLoader): Only declare.
Tom Tromey [Fri, 21 Dec 2001 19:15:36 +0000 (19:15 +0000)]
For PR java/4509:
* parse.y (java_complete_lhs) [COMPOUND_EXPR]: Correctly compute
CAN_COMPLETE_NORMALLY for the node.
* jcf-write.c (generate_bytecode_insns) [COMPOUND_EXPR]: Don't
generate code for second branch if first branch can't complete
normally.
(generate_bytecode_insns) [LOOP_EXPR]: Don't generate `goto' to
the loop head if the loop body can't complete normally.
Turly O'Connor [Fri, 21 Dec 2001 10:44:50 +0000 (10:44 +0000)]
darwin.c (machopic_classify_ident): Handle "stale" section- encoded name problem to avoid generating illegal stubs.
* darwin.c (machopic_classify_ident): Handle "stale" section-
encoded name problem to avoid generating illegal stubs.
(func_name_maybe_scoped): Remove, not needed for gcc3.
(machopic_indirect_call_target): Don't use it.
(darwin_encode_section_info): Call only one of update_stubs()
or update_non_lazy_ptrs() as DECL cannot be both.
(machopic_output_possible_stub_label): New.
* darwin.h (ASM_DECLARE_FUNCTION_NAME): Use it.
* darwin-protos.h (machopic_output_possible_stub_label): Declare.
Tom Tromey [Fri, 21 Dec 2001 05:28:27 +0000 (05:28 +0000)]
For PR java/4509:
* parse.y (java_complete_lhs) [COMPOUND_EXPR]: Correctly compute
CAN_COMPLETE_NORMALLY for the node.
* jcf-write.c (generate_bytecode_insns) [COMPOUND_EXPR]: Don't
generate code for second branch if first branch can't complete
normally.
(generate_bytecode_insns) [LOOP_EXPR]: Don't generate `goto' to
the loop head if the loop body can't complete normally.