platform/upstream/gcc.git
19 years agosimd-2.C: Check for AltiVec HW support at runtime.
Janis Johnson [Tue, 1 Feb 2005 21:33:28 +0000 (21:33 +0000)]
simd-2.C: Check for AltiVec HW support at runtime.

* g++.dg/eh/simd-2.C: Check for AltiVec HW support at runtime.
* g++.dg/eh/check-vect.h: New.

From-SVN: r94565

19 years agovect-77.c: Replace xfail selector with expression.
Janis Johnson [Tue, 1 Feb 2005 21:31:20 +0000 (21:31 +0000)]
vect-77.c: Replace xfail selector with expression.

* gcc.dg/vect/vect-77.c: Replace xfail selector with expression.
* gcc.dg/vect/vect-78.c: Ditto.
* gcc.dg/vect/vect.exp (check_effective_target_lp64_or_vect_no_align):
Remove.

From-SVN: r94564

19 years agosimd1.C: Expect warning.
Janis Johnson [Tue, 1 Feb 2005 21:28:30 +0000 (21:28 +0000)]
simd1.C: Expect warning.

* g++.dg/conversion/simd1.C: Expect warning.
* g++.dg/ext/attribute-test-1.C: Ditto.
* g++.dg/ext/attribute-test-2.C: Ditto.
* g++.dg/ext/attribute-test-3.C: Ditto.
* g++.dg/ext/attribute-test-4.C: Ditto.

From-SVN: r94563

19 years agoppc64-toc.c: Don't explicitly use -m64.
Janis Johnson [Tue, 1 Feb 2005 21:27:16 +0000 (21:27 +0000)]
ppc64-toc.c: Don't explicitly use -m64.

* gcc.dg/ppc64-toc.c: Don't explicitly use -m64.
* gcc.dg/ppc-eabi.c: Don't explicity use -m32.

From-SVN: r94562

19 years ago* gcc.dg/ppc64-abi-3.c: Add xfail for error checks.
Janis Johnson [Tue, 1 Feb 2005 21:25:31 +0000 (21:25 +0000)]
* gcc.dg/ppc64-abi-3.c: Add xfail for error checks.

From-SVN: r94561

19 years agojcf-write.c (generate_bytecode_insns): Implement RSHIFT_EXPR of unsigned types using...
Roger Sayle [Tue, 1 Feb 2005 21:20:34 +0000 (21:20 +0000)]
jcf-write.c (generate_bytecode_insns): Implement RSHIFT_EXPR of unsigned types using iushr and lushr JVM bytecodes.

* jcf-write.c (generate_bytecode_insns): Implement RSHIFT_EXPR
of unsigned types using iushr and lushr JVM bytecodes.

From-SVN: r94560

19 years agore PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copys...
Richard Henderson [Tue, 1 Feb 2005 20:57:22 +0000 (12:57 -0800)]
re PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copysignl)

        PR 19696
        * optabs.c (expand_copysign_absneg): Export.
        * optabs.h (expand_copysign_absneg): Declare.
        * config/rs6000/rs6000.md (copysigntf3): New.

        * gcc.c-torture/execute/ieee/copysign1.c: Special case sizeof
        long double for ibm double-double format.
        * gcc.c-torture/execute/ieee/copysign2.c: Likewise.

From-SVN: r94559

19 years agore PR tree-optimization/19633 (local address incorrectly thought to escape)
Diego Novillo [Tue, 1 Feb 2005 20:30:07 +0000 (20:30 +0000)]
re PR tree-optimization/19633 (local address incorrectly thought to escape)

PR tree-optimization/19633
* tree-flow.h (struct ptr_info_def): Add field 'pt_null'.
* tree-ssa-alias.c (init_alias_info): Initialize.
(merge_pointed_to_info): Set.
(add_pointed_to_expr): Set pt_null if EXPR is a NULL pointer.
(dump_points_to_info_for): Show value of pt_null.
(struct count_ptr_d): Declare.
(find_ptr_dereference): Remove.
(ptr_is_dereferenced_by): Remove.
(count_ptr_derefs): New local function.
(count_uses_and_derefs): New local function.
(compute_points_to_and_addr_escape): Call it.  If the number
of dereferences is greater than zero, mark the pointer as
dereferenced.  If there are fewer dereferences than uses of
the pointer, the pointer's value escapes.

testsuite/ChangeLog

PR tree-optimization/19633
* testsuite/gcc.dg/pr19633-1.c: New test.
* testsuite/gcc.dg/pr19633.c: Tweak to make pointer point
to NULL or a symbol.

From-SVN: r94558

19 years agore PR tree-optimization/19670 (testsuite failure: gcc.c-torture/execute/builtins...
Diego Novillo [Tue, 1 Feb 2005 20:26:25 +0000 (20:26 +0000)]
re PR tree-optimization/19670 (testsuite failure: gcc.c-torture/execute/builtins/strlen-3.c compilation,  -O1)

PR tree-optimization/19670
* tree-ssa.c (verify_ssa_name): Don't set TREE_VISITED
here...
(verify_use): ... set it here, instead.

From-SVN: r94557

19 years agonatPlainDatagramSocketImplPosix.cc (getOption): Support IP_MULTICAST_LOOP.
Anthony Green [Tue, 1 Feb 2005 19:22:47 +0000 (19:22 +0000)]
natPlainDatagramSocketImplPosix.cc (getOption): Support IP_MULTICAST_LOOP.

2005-01-31  Anthony Green  <green@redhat.com>

        * gnu/java/net/natPlainDatagramSocketImplPosix.cc (getOption):
        Support IP_MULTICAST_LOOP.
        (setOption): Support IP_MULTICAST_LOOP.

        * gnu/java/net/natPlainSocketImplPosix.cc (setOption): Add
        SO_REUSEADDR support.
        (getOption): Support SO_REUSEADDR.

From-SVN: r94555

19 years agore PR java/19738 (gcjh generates invalid class member floating-point initialisers)
Ranjit Mathew [Tue, 1 Feb 2005 18:38:12 +0000 (18:38 +0000)]
re PR java/19738 (gcjh generates invalid class member floating-point initialisers)

PR java/19738
* gjavah.c (jni_print_float): Do not emit floating-point
initialiser for a static final field.
(jni_print_double): Likewise.

From-SVN: r94553

19 years ago* doc/sourcebuild.texi (Test directives): Fix formatting.
Janis Johnson [Tue, 1 Feb 2005 18:16:43 +0000 (18:16 +0000)]
* doc/sourcebuild.texi (Test directives): Fix formatting.

From-SVN: r94552

19 years agosourcebuild.texi (Test directives): Describe selector expressions.
Janis Johnson [Tue, 1 Feb 2005 17:54:45 +0000 (17:54 +0000)]
sourcebuild.texi (Test directives): Describe selector expressions.

* doc/sourcebuild.texi (Test directives): Describe selector
expressions.

* lib/gcc-dg.exp (selector_opd, selector_list, selector_expression):
New procs.
(dg-process-target (local override)): Handle selector expressions.

From-SVN: r94551

19 years agoREADME: Describe tests in source directory.
Janis Johnson [Tue, 1 Feb 2005 17:37:25 +0000 (17:37 +0000)]
README: Describe tests in source directory.

* gcc.test-framework/README: Describe tests in source directory.
* gcc.test-framework/test-framework.awk: Handle dg- tests.
* gcc.test-framework/test-framework.exp: Handle dg- tests.
* gcc.test-framework/dg-bogus-exp-P.c: New test.
* gcc.test-framework/dg-bogus-exp-XF.c: New test.
* gcc.test-framework/dg-do-assemble-exp-P.c: New test.
* gcc.test-framework/dg-do-compile-exp-P.c: New test.
* gcc.test-framework/dg-do-link-exp-P.c: New test.
* gcc.test-framework/dg-do-run-exp-P.c: New test.
* gcc.test-framework/dg-dot-run-exp-P.c: New test.
* gcc.test-framework/dg-dot-run-exp-U.c: New test.
* gcc.test-framework/dg-dox-run-exp-XF.c: New test.
* gcc.test-framework/dg-error-exp-P.c: New test.
* gcc.test-framework/dg-error-exp-XP.c: New test.
* gcc.test-framework/dg-excess-errors-exp-XF.c: New test.
* gcc.test-framework/dg-excess-errors-exp-XP.c: New test.
* gcc.test-framework/dg-output-exp-P.c: New test.
* gcc.test-framework/dg-output-exp-XF.c: New test.
* gcc.test-framework/dg-warning-exp-P.c: New test.
* gcc.misc-tests/dg-1.c: Remove.
* gcc.misc-tests/dg-2.c: Remove.
* gcc.misc-tests/dg-3.c: Remove.
* gcc.misc-tests/dg-4.c: Remove.
* gcc.misc-tests/dg-5.c: Remove.
* gcc.misc-tests/dg-6.c: Remove.
* gcc.misc-tests/dg-7.c: Remove.
* gcc.misc-tests/dg-8.c: Remove.
* gcc.misc-tests/dg-9.c: Remove.
* gcc.misc-tests/dg-10.c: Remove.
* gcc.misc-tests/dg-11.c: Remove.
* gcc.misc-tests/dg-12.c: Remove.
* gcc.misc-tests/dg-test.exp: Remove.

From-SVN: r94550

19 years agotest-framework.awk: Change recording and printing of passes and failures.
Janis Johnson [Tue, 1 Feb 2005 17:31:33 +0000 (17:31 +0000)]
test-framework.awk: Change recording and printing of passes and failures.

* gcc.test-framework/test-framework.awk: Change recording and
printing of passes and failures.

From-SVN: r94549

19 years agogcc.test-framework: New directory.
Janis Johnson [Tue, 1 Feb 2005 17:28:46 +0000 (17:28 +0000)]
gcc.test-framework: New directory.

2005-02-01  Janis Johnson  <janis187@us.ibm.com>

* gcc.test-framework: New directory.
* gcc.test-framework/README: New.
* gcc.test-framework/test-framework.exp: New.
* gcc.test-framework/test-framework.awk: New.
* gcc.test-framework/gen_directive_tests: New.

From-SVN: r94548

19 years agorevert: gjavah.c (print_field_info): Mark static data members of floating-point type...
Mark Mitchell [Tue, 1 Feb 2005 17:13:08 +0000 (17:13 +0000)]
revert: gjavah.c (print_field_info): Mark static data members of floating-point type with "__extension__".

Revert:
2005-01-31  Mark Mitchell  <mark@codesourcery.com>
* gjavah.c (print_field_info): Mark static data members of
floating-point type with "__extension__".

From-SVN: r94547

19 years agoconfig.gcc (powerpc64-*-linux*): Default to -m64 also for specific 64-bit CPUs.
Segher Boessenkool [Tue, 1 Feb 2005 15:36:42 +0000 (16:36 +0100)]
config.gcc (powerpc64-*-linux*): Default to -m64 also for specific 64-bit CPUs.

2005-02-01  Segher Boessenkool  <segher@kernel.crashing.org>

* config.gcc (powerpc64-*-linux*): Default to -m64 also for
specific 64-bit CPUs.

From-SVN: r94545

19 years ago(lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it.
James A. Morrison [Tue, 1 Feb 2005 15:18:30 +0000 (15:18 +0000)]
(lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it.

2005-02-01  James A. Morrison  <phython@gcc.gnu.org>

        * (lex.l): Undef LINEMAP_POSITION_FOR_COLUMN before defining it.

From-SVN: r94544

19 years agoparse.y: Reformat comments.
James A. Morrison [Tue, 1 Feb 2005 15:16:58 +0000 (15:16 +0000)]
parse.y: Reformat comments.

2005-02-01  James A. Morrison  <phython@gcc.gnu.org>

        * parse.y: Reformat comments.
        * treetree.c: Likewise.
        * treetree.h: Likewise.

From-SVN: r94543

19 years agotreelang.exp: Fix comment typos.
James A. Morrison [Tue, 1 Feb 2005 15:07:42 +0000 (15:07 +0000)]
treelang.exp: Fix comment typos.

2005-02-01  James A. Morrison  <phython@gcc.gnu.org>

        * lib/treelang.exp: Fix comment typos.
        (treelang_target_compile): Don't append libs=-ltreelang to options.

From-SVN: r94542

19 years agore PR target/16201 (Assembler messages:Error: bad immediate value for offset (4116))
Richard Earnshaw [Tue, 1 Feb 2005 14:07:02 +0000 (14:07 +0000)]
re PR target/16201 (Assembler messages:Error: bad immediate value for offset (4116))

PR target/16201
* arm.c (arm_eliminable_register): New function.
(adjacent_mem_locations): Don't allow eliminable registers.  Use
HOST_WIDE_INT for address offsets.
* arm-protos.h (arm_eliminable_register): Add prototype.

From-SVN: r94540

19 years agocpp_type_traits.h: Rename _M_type fields to __value...
Paolo Carlini [Tue, 1 Feb 2005 13:30:34 +0000 (13:30 +0000)]
cpp_type_traits.h: Rename _M_type fields to __value...

2005-02-01  Paolo Carlini  <pcarlini@suse.de>

* include/bits/cpp_type_traits.h: Rename _M_type fields to
__value, except for __enable_if, _M_type -> __type, consistently
with the other traits.
* include/bits/stl_algobase.h: Tweak consistently.
* include/bits/stl_tree.h: Likewise.
* include/bits/valarray_array.h: Likewise.
* include/c_std/std_cmath.h: Likewise.
* include/debug/safe_iterator.h: Likewise.
* include/std/std_complex.h: Likewise.

From-SVN: r94538

19 years agore PR rtl-optimization/15242 (pessimization of "goto *")
Steven Bosscher [Tue, 1 Feb 2005 10:03:15 +0000 (10:03 +0000)]
re PR rtl-optimization/15242 (pessimization of "goto *")

PR optimization/15242
* params.def (PARAM_MAX_GOTO_DUPLICATION_INSNS): New param.
* basic-block.h (duplicate_computed_gotos): Add prototype.
* bb-reorder.c (duplicate_computed_gotos): New function to
duplicate sufficiently small blocks ending in a computed jump.
* passes.c (rest_of_compilation): Call duplicate_computed_gotos
if not optimizing for size.
* cfgcleanup.c (try_crossjump_bb): If not optimizing for size,
never do tail merging for blocks ending in a computed jump.
* doc/invoke.texi: Document the max-goto-duplication-insns param.

From-SVN: r94531

19 years agore PR libfortran/19363 (List directed write of Infinity and NaN has regressed)
Paul Thomas [Tue, 1 Feb 2005 09:06:22 +0000 (10:06 +0100)]
re PR libfortran/19363 (List directed write of Infinity and NaN has regressed)

2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>

PR libgfortran/19363
PR libgfortran/19691
* libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.

From-SVN: r94530

19 years agoPatch from Richard Sandiford <rsandifo@redhat.com>
Eric Botcazou [Tue, 1 Feb 2005 07:22:19 +0000 (08:22 +0100)]
Patch from Richard Sandiford <rsandifo@redhat.com>
* reload1.c (choose_reload_regs): Prevent the find_equiv_reg() code
from inheriting a subreg equivalence with a non-spill register.

* tree.h (DECL_FUNCTION_CODE): Document that it is overloaded.

From-SVN: r94529

19 years agoparser.c (cp_parser_primary_expression): Don't complain about floating-point literals...
Mark Mitchell [Tue, 1 Feb 2005 06:58:27 +0000 (06:58 +0000)]
parser.c (cp_parser_primary_expression): Don't complain about floating-point literals in integral constant expressions...

* parser.c (cp_parser_primary_expression): Don't complain about
floating-point literals in integral constant expressions when
!pedantic.

* gjavah.c (print_field_info): Mark static data members of
floating-point type with "__extension__".

From-SVN: r94527

19 years agocrossconfig.m4: Repair Solaris cross bits for strtold and strtof.
Brad Spencer [Tue, 1 Feb 2005 06:56:30 +0000 (06:56 +0000)]
crossconfig.m4: Repair Solaris cross bits for strtold and strtof.

2005-01-31  Brad Spencer  <spencer@infointeractive.com>

* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
* configure: Regenerated.

From-SVN: r94526

19 years agofrv.c (movcc_fp_destination_operand): New.
Alexandre Oliva [Tue, 1 Feb 2005 06:33:35 +0000 (06:33 +0000)]
frv.c (movcc_fp_destination_operand): New.

* config/frv/frv.c (movcc_fp_destination_operand): New.
(gpr_or_memory_operand): Fix typo in comment.
(gpr_or_memory_operand_with_scratch): New.
* config/frv/frv.h (PREDICATE_CODES): Add the two new predicates.
* config/frv/frv.md (movcc_fp, movcc_fp_internal): Use
movcc_fp_destination_operand.
(reload_incc_fp): Use gpr_or_memory_operand_with_scratch.
Legitimize memory addresses using a scratch register.

From-SVN: r94523

19 years ago* parser.c (cp_parser_template_id): Revert comment patch too.
Alexandre Oliva [Tue, 1 Feb 2005 06:07:14 +0000 (06:07 +0000)]
* parser.c (cp_parser_template_id): Revert comment patch too.

From-SVN: r94521

19 years agore PR c++/18757 (ICE (on invalid) in get_innermost_template_args)
Alexandre Oliva [Tue, 1 Feb 2005 05:56:08 +0000 (05:56 +0000)]
re PR c++/18757 (ICE (on invalid) in get_innermost_template_args)

gcc/cp/ChangeLog:
PR c++/18757
PR c++/19366
PR c++/19499
* parser.c (cp_parser_template_id): Revert 2004-12-09's patch.
Issue an error when creating the template id.
* pt.c (fn_type_unification): Return early if the explicit
template arg list is an error_mark_node.
gcc/testsuite/ChangeLog:
* g++.dg/parse/typename7.C: Adjust error messages.

From-SVN: r94520

19 years agotree-into-ssa.c (mark_def_sites_global_data): Make KILLS bitmap a sparse bitmap inste...
Jeff Law [Tue, 1 Feb 2005 05:28:23 +0000 (22:28 -0700)]
tree-into-ssa.c (mark_def_sites_global_data): Make KILLS bitmap a sparse bitmap instead of a simple bitmap.

        * tree-into-ssa.c (mark_def_sites_global_data): Make KILLS
        bitmap a sparse bitmap instead of a simple bitmap.
        (mark_def_sites_initialize_block):  Corresponding changes.
        (ssa_mark_def_sites_initialize_block): Likewise.
        (ssa_mark_phi_uses): Likewise.
        (mark_def_site, ssa_mark_def_sites): Likewise.
        (mark_def_site_blocks): Likewise.
        (rewrite_ssa_into_ssa): Likewise.

From-SVN: r94519

19 years agotree-ssa-dom.c (record_cond): Pass correct variable type for last argument to htab_fi...
Jeff Law [Tue, 1 Feb 2005 03:52:37 +0000 (20:52 -0700)]
tree-ssa-dom.c (record_cond): Pass correct variable type for last argument to htab_find_slot_with_hash.

        * tree-ssa-dom.c (record_cond): Pass correct variable type
        for last argument to htab_find_slot_with_hash.

From-SVN: r94517

19 years agofold-const.c (fold, [...]): Do not lose side effects when optimizing 0 % X.
Jeff Law [Tue, 1 Feb 2005 03:48:52 +0000 (20:48 -0700)]
fold-const.c (fold, [...]): Do not lose side effects when optimizing 0 % X.

* fold-const.c (fold, case CEIL_MOD_EXPR): Do not lose side
effects when optimizing 0 % X.  Do not try to optimize X % 0.

* gcc.c-torture/execute/20050131-1.c: New test.
* gcc.dg/wcaselabel.c: New test.

From-SVN: r94516

19 years agoFix typo in Richard Henderson's IA-64 vector patch.
James E Wilson [Tue, 1 Feb 2005 03:06:26 +0000 (19:06 -0800)]
Fix typo in Richard Henderson's IA-64 vector patch.

* config/ia64/itanium1.md (1_scall bypass): Change 2_mmalua to
1_mmalua.

From-SVN: r94515

19 years agomips.c (override_options): Warn if -mint64 is used.
Eric Christopher [Tue, 1 Feb 2005 03:02:51 +0000 (03:02 +0000)]
mips.c (override_options): Warn if -mint64 is used.

2005-02-01  Eric Christopher  <echristo@redhat.com>

* config/mips/mips.c (override_options): Warn if -mint64
is used.
* doc/invoke.texi (MIPS Options): Document that -mint64 is
deprecated.

From-SVN: r94514

19 years agore PR java/9157 (SEGV on bad java source)
Ranjit Mathew [Tue, 1 Feb 2005 02:36:29 +0000 (02:36 +0000)]
re PR java/9157 (SEGV on bad java source)

        PR java/9157
        * parse.y (build_string_concatenation): Remove redundant if.
        (patch_conditional_expr): Attempt to patch_string() the condition
        of a ?: as well, in addition to its other operands.

From-SVN: r94513

19 years agodecl.c (build_enumerator): Do not issue duplicate error messages about invalid enumer...
Mark Mitchell [Tue, 1 Feb 2005 01:01:34 +0000 (01:01 +0000)]
decl.c (build_enumerator): Do not issue duplicate error messages about invalid enumeration constants.

* decl.c (build_enumerator): Do not issue duplicate error messages
about invalid enumeration constants.
* parser.c (cp_parser_non_integral_constant_expression): Always
set parser->non_integral_constant_expression_p.
(cp_parser_primary_expression): Add cast_p parameter.  Issue
errors about invalid uses of floating-point literals in
cast-expressions.
(cp_parser_postfix_expression): Add cast_p parameter.
(cp_parser_open_square_expression): Pass it.
(cp_parser_parenthesized_expression_list): Add cast_p parameter.
(cp_parser_unary_expression): Likewise.
(cp_parser_new_placement): Pass it.
(cp_parser_direct_new_declarator): Likewise.
(cp_parser_new_initializer): Likewise.
(cp_parser_cast_expression): Add cast_p parameter.
(cp_parser_binary_expression): Likewise.
(cp_parser_question_colon_clause): Likewise.
(cp_parser_assignment_expression): Likewise.
(cp_parser_expression): Likewise.
(cp_parser_constant_expression): If an integral constant
expression is invalid, return error_mark_node.
(cp_parser_expression_statement): Pass cast_p.
(cp_parser_condition): Likewise.
(cp_parser_iteration_statement): Likewise.
(cp_parser_jump_statement): Likewise.
(cp_parser_mem_initializer): Likewise.
(cp_parser_template_argument): Likewise.
(cp_parser_parameter_declaration): Likewise.
(cp_parser_initializer): Likewise.
(cp_parser_throw_expression): Likewise.
(cp_parser_attribute_list): Likewise.
(cp_parser_simple_cast_expression): Likewise.
(cp_parser_functional_cast): Likewise.
(cp_parser_late_parsing_default_args): Likewise.
(cp_parser_sizeof_operand): Save/restore
non_integral_constant_expression_p.

* include/std/std_limits.h (numeric_limits<float>::has_denorm):
Add required cast.
(numeric_limits<double>::has_denorm): Likewise.
(numeric_limits<long double>::has_denorm): Likewise.

* g++.dg/other/warning1.C: Adjust error messags.
* g++.dg/parse/constant5.C: New test.

From-SVN: r94512

19 years ago* cse.c (get_cse_reg_info): Update a comment.
Kazu Hirata [Tue, 1 Feb 2005 00:41:56 +0000 (00:41 +0000)]
* cse.c (get_cse_reg_info): Update a comment.

From-SVN: r94511

19 years agoDaily bump.
GCC Administrator [Tue, 1 Feb 2005 00:16:23 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r94509

19 years agocse.c (cse_reg_info): Remove hash_next, next, regno.
Kazu Hirata [Tue, 1 Feb 2005 00:14:47 +0000 (00:14 +0000)]
cse.c (cse_reg_info): Remove hash_next, next, regno.

* cse.c (cse_reg_info): Remove hash_next, next, regno.  Add
timestamp.
(cse_reg_info_list, cse_reg_info_list_free, REGHASH_SHIFT,
REGHASH_SIZE, REGHASH_MASK, reg_hash, REGHASH_FN,
cached_cse_reg_info, GET_CSE_REG_INFO): Remove.
(cached_regno): Initialize to INVALID_REGNUM.
(cse_reg_info_table_size,
cse_reg_info_table_first_uninitialized,
cse_reg_info_timestamp): New.
(REG_TICK, REG_IN_TABLE, SUBREG_TICKED, REG_QTY): Use
get_cse_reg_info.
(init_cse_reg_info, get_cse_reg_info_1): New.
(get_cse_reg_info): Cache the last look-up.
(new_basic_block): Update the code to clear mappings from
registers to cse_reg_info entries.
(cse_main): Call init_cse_reg_info.

From-SVN: r94506

19 years agore PR c/19333 (C front end accepts arrays of incomplete types)
Steven Bosscher [Tue, 1 Feb 2005 00:09:40 +0000 (00:09 +0000)]
re PR c/19333 (C front end accepts arrays of incomplete types)

gcc/
        PR c/19333
        * c-decl.c (start_decl): Do not warn about arrays of elements with
        an incomplete type here.
        (grokdeclarator): Do it here by making a pedwarn an error.
        * c-typeck.c (push_init_level): If there were previous errors with
        the constructor type, do not warn about braces for initializers.
        (process_init_element): Likewise for excess initializer elements.

testsuite/
        PR c/19333
        * testsuite/gcc.c-torture/compile/20011130-1.c: Reorder to make
        the test case valid.
        * testsuite/gcc.dg/20030815-1.c: Remove invalid tests.
        * testsuite/gcc.dg/array-7.c: Adjust expected result.
        * testsuite/gcc.dg/pr18596-3.c: Likewise.
        * testsuite/gcc.dg/noncompile/20000901-1.c: Likewise.
        * testsuite/gcc.dg/noncompile/init-2.c: Likewise.
        * testsuite/gcc.dg/noncompile/init-4.c: Likewise.

From-SVN: r94505

19 years agoextend.texi (nested functions): Fix linkage description.
Dale Johannesen [Mon, 31 Jan 2005 23:18:49 +0000 (23:18 +0000)]
extend.texi (nested functions): Fix linkage description.

2005-01-31  Dale Johannesen  <dalej@apple.com>

* doc/extend.texi (nested functions): Fix linkage description.
Clarify that static is not allowed.

From-SVN: r94499

19 years ago* cse.c (delete_trivially_dead_insn): Don't iterate.
Kazu Hirata [Mon, 31 Jan 2005 22:43:36 +0000 (22:43 +0000)]
* cse.c (delete_trivially_dead_insn): Don't iterate.

From-SVN: r94498

19 years agors6000.md (copysignsf3): New expand.
Andrew Pinski [Mon, 31 Jan 2005 22:29:27 +0000 (22:29 +0000)]
rs6000.md (copysignsf3): New expand.

2005-01-31  Andrew Pinski  <pinskia@physics.uc.edu>

        * config/rs6000/rs6000.md (copysignsf3): New expand.
        (copysigndf3): Likewise.

From-SVN: r94497

19 years agoparser.c (cp_lexer_new_main): Get the first token, first, before doing anything.
Mike Stump [Mon, 31 Jan 2005 22:05:07 +0000 (22:05 +0000)]
parser.c (cp_lexer_new_main): Get the first token, first, before doing anything.

        * parser.c (cp_lexer_new_main): Get the first token, first, before
        doing anything.
Radar 3929334

From-SVN: r94494

19 years agorecog.c (constrain_operands): Only look for earlyclobber operand conflicts if an...
Steven Bosscher [Mon, 31 Jan 2005 21:14:44 +0000 (21:14 +0000)]
recog.c (constrain_operands): Only look for earlyclobber operand conflicts if an '&' constraint was seen.

* recog.c (constrain_operands): Only look for earlyclobber operand
conflicts if an '&' constraint was seen.

From-SVN: r94493

19 years agoThx to Eric Botcazou, Andrew Pinski and Mark Kettenis for this one.
Marc Espie [Mon, 31 Jan 2005 18:51:26 +0000 (18:51 +0000)]
Thx to Eric Botcazou, Andrew Pinski and Mark Kettenis for this one.

Turns out OpenBSD was mistakenly including an embedded system fragment,
and thus outputting stabs debug by default.

Once the only needed definition is saved from that file, we happily compile
with default dwarf2.   The rest of the toolchain is happy, and any recent
gdb works very well with that...

This obviously improves the stability of the compiler, since dwarf2 output
is so much more well-tested than stabs on elf platforms...

2005-01-31  Marc Espie <espie@openbsd.org>

* config.gcc: Don't include embedded systems fragment, switches default
debugging format to ELF.
* config/i386/openbsdelf.h: Add DBX_REGISTER_NUMBER since we no
longer pick it up there.

From-SVN: r94488

19 years agodarwin.md (movsf_low_di): Make work.
Dale Johannesen [Mon, 31 Jan 2005 18:11:19 +0000 (18:11 +0000)]
darwin.md (movsf_low_di): Make work.

2005-01-31  Dale Johannesen  <dalej@apple.com>

* config/rs6000/darwin.md (movsf_low_di):  Make work.
(movdf_low_di):  Make work.

From-SVN: r94487

19 years agodarwin-tramp.asm (__trampoline_setup): Make work for 64 bit.
Dale Johannesen [Mon, 31 Jan 2005 18:03:46 +0000 (18:03 +0000)]
darwin-tramp.asm (__trampoline_setup): Make work for 64 bit.

2005-01-31  Dale Johannesen  <dalej@apple.com>

* config/rs6000/darwin-tramp.asm (__trampoline_setup):
Make work for 64 bit.

From-SVN: r94486

19 years agore PR middle-end/19650 (miscompiling of array acess of (int)(a==2))
Dale Johannesen [Mon, 31 Jan 2005 18:00:52 +0000 (18:00 +0000)]
re PR middle-end/19650 (miscompiling of array acess of (int)(a==2))

2005-01-31  Roger Sayle  <roger@eyesopen.com>
    Dale Johannesen  <dalej@apple.com>

PR middle-end/19650
* fold-const.c (fold_binary_op_with_conditional_arg):
Make types match original operands, before STRIP_NOPS.

From-SVN: r94485

19 years agocpp_type_traits.h: Add types to the structs thus making type_traits.h redundant...
Paolo Carlini [Mon, 31 Jan 2005 16:22:01 +0000 (16:22 +0000)]
cpp_type_traits.h: Add types to the structs thus making type_traits.h redundant...

2005-01-31  Paolo Carlini  <pcarlini@suse.de>
    Gabriel Dos Reis  <gdr@integrable-solutions.net>

* include/bits/cpp_type_traits.h: Add types to the structs thus
making type_traits.h redundant; exploit new __truth_type and
__traitor helpers.
* include/bits/type_traits.h: Remove.
* include/Makefile.am: Update.
* include/Makefile.in: Regenerate.
* include/backward/tempbuf.h: Include cpp_type_traits.h instead.
* include/bits/basic_string.h (replace(iterator, iterator,
_InputIterator, _InputIterator), _S_construct(_InIterator,
_InIterator, const _Alloc&)): Use __is_integer instead.
* include/bits/stl_bvector.h (vector(_InputIterator,
_InputIterator, const allocator_type&), assign(_InputIterator,
_InputIterator), insert(iterator, _InputIterator, _InputIterator)):
Likewise.
* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
_ForwardIterator)): Use __is_scalar.
* include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
const allocator_type&), assign(_InputIterator, _InputIterator),
insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
* include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
insert(iterator, _InputIterator, _InputIterator)): Likewise.
* include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
_ForwardIterator)): Use __is_scalar.
* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
_InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
_ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
_Size, const _Tp&)): Likewise.
* include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
const allocator_type&), assign(_InputIterator, _InputIterator),
insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
* include/debug/debug.h (__valid_range(const _InputIterator&,
const _InputIterator&)): Use __is_integer.
* include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
* include/std/std_string.h: Include cpp_type_traits.h instead.

Co-Authored-By: Gabriel Dos Reis <gdr@integrable-solutions.net>
From-SVN: r94484

19 years ago* decl.c (start_decl): Add missing parentheses.
Mark Mitchell [Mon, 31 Jan 2005 16:16:16 +0000 (16:16 +0000)]
* decl.c (start_decl): Add missing parentheses.

From-SVN: r94483

19 years agolinux-unwind.h (struct gcc_vregs): New.
Alan Modra [Mon, 31 Jan 2005 13:37:37 +0000 (13:37 +0000)]
linux-unwind.h (struct gcc_vregs): New.

* config/rs6000/linux-unwind.h (struct gcc_vregs): New.
(struct gcc_regs): Rename from gcc_pt_regs.  Add more regs.
(struct gcc_sigcontext): Delete.  Merge contents to..
(struct gcc_ucontext): ..here.
(get_sigcontext): Delete.
(get_regs): New function, like get_sigcontext but return regs ptr.
64-bit version finds regs from r1 to support vdso.
(ppc_linux_aux_vector): New function.
(ppc_fallback_frame_state): Modify for get_regs.  Restore fprs
and vector regs.

From-SVN: r94481

19 years agotree-vectorizer.c (vect_analyze_offset_expr): Use ssizetype instead sizetype.
Ira Rosen [Mon, 31 Jan 2005 11:51:01 +0000 (11:51 +0000)]
tree-vectorizer.c (vect_analyze_offset_expr): Use ssizetype instead sizetype.

2005-01-31  Ira Rosen  <irar@il.ibm.com>

        * tree-vectorizer.c (vect_analyze_offset_expr): Use ssizetype instead
        sizetype.
        (vect_get_base_and_offset): Use ssizetype instead sizetype. Remove
        redundant fold. Fix misalignment for MINUS_EXPR.
        (vect_compute_data_ref_alignment): Use ssizetype instead sizetype.
        (vect_analyze_pointer_ref_access): Likewise.
        (vect_get_memtag_and_dr): Likewise.

From-SVN: r94480

19 years agoi386.c (absnegsf2_mixed): Remove all of the # hackery.
Richard Henderson [Mon, 31 Jan 2005 09:16:02 +0000 (01:16 -0800)]
i386.c (absnegsf2_mixed): Remove all of the # hackery.

        * config/i386/i386.c (absnegsf2_mixed): Remove all of the # hackery.
        (absnegsf2_sse, absnegsf2_i387, absnegdf2_mixed, absnegdf2_sse,
        absnegdf2_i387, absnegxf2_i387): Likewise.

From-SVN: r94473

19 years agocopysign1.c: Special case sizeof long double for intel double extended format.
Richard Henderson [Mon, 31 Jan 2005 09:10:01 +0000 (01:10 -0800)]
copysign1.c: Special case sizeof long double for intel double extended format.

        * gcc.c-torture/execute/ieee/copysign1.c: Special case sizeof
        long double for intel double extended format.
        * gcc.c-torture/execute/ieee/copysign2.c: Likewise.

From-SVN: r94472

19 years agore PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copys...
Richard Henderson [Mon, 31 Jan 2005 09:02:25 +0000 (01:02 -0800)]
re PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copysignl)

        PR 19696
        * optabs.c (expand_copysign_absneg): New.
        (expand_copysign_bit): Split out from ...
        (expand_copysign): ... here.  Use expand_copysign_absneg.

From-SVN: r94471

19 years agore PR c++/19555 (specialized in the wrong namespace causes an ICE)
Mark Mitchell [Mon, 31 Jan 2005 06:16:54 +0000 (06:16 +0000)]
re PR c++/19555 (specialized in the wrong namespace causes an ICE)

PR c++/19555
* cp-tree.h (DECL_USE_TEMPLATE): Expand documentation.
* decl.c (duplicate_decls): Do not discard
DECL_IMPLICIT_INSTANTIATION when merging declarations.
(start_decl): Do not SET_DECL_TEMPLATE_SPECIALIZATION for
variables that do not have DECL_USE_TEMPLATE.

PR c++/19555
* g++.dg/template/static10.C: New test.

From-SVN: r94469

19 years agore PR middle-end/19697 (gcc.c-torture/execute/ieee/mzero6.c:24: error: unrecognizable...
Roger Sayle [Mon, 31 Jan 2005 06:04:07 +0000 (06:04 +0000)]
re PR middle-end/19697 (gcc.c-torture/execute/ieee/mzero6.c:24: error: unrecognizable insn)

PR middle-end/19697
* config/pa/pa.md (anddi3, iordi3): On HPPA64, disallow an integer
constant as the second operand and a register as the third.

From-SVN: r94468

19 years agore PR target/19704 (ICE for tail call of regparm 3 and dllimport)
Danny Smith [Mon, 31 Jan 2005 05:49:07 +0000 (05:49 +0000)]
re PR target/19704 (ICE for tail call of regparm 3 and dllimport)

PR target/19704
* config/i386/i386.c (ix86_function_ok_for_sibcall):  Also check
that dllimport'd functions do not use all call-clobbered registers
to pass parameters.

From-SVN: r94467

19 years agore PR c++/19395 (invalid scope qualifier allowed in typedef)
Mark Mitchell [Mon, 31 Jan 2005 04:07:41 +0000 (04:07 +0000)]
re PR c++/19395 (invalid scope qualifier allowed in typedef)

PR c++/19395
* decl.c (grokdeclarator): Refactor code so that qualified names
are never allowed as the declarator in a typedef.

PR c++/19367
* name-lookup.c (do_nonmember_using_decl): Avoid overloading
builtin declarations.

PR c++/19395
* g++.dg/parse/error24.C: New test.

PR c++/19367
* g++.dg/lookup/builtin1.C: New test.

From-SVN: r94466

19 years agore PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copys...
Richard Henderson [Mon, 31 Jan 2005 04:00:55 +0000 (20:00 -0800)]
re PR other/19696 (gcc.c-torture/execute/ieee/copysign1.c: Unsatisfied symbols: copysignl)

        PR 19696
        * optabs.c (expand_absneg_bit): Split out from expand_unop and
        expand_abs_nojump and generalize.  Use operand_subword and
        emit_no_conflict_block.  Support large modes.
        (expand_abs_nojump): Use it.  Use HONOR_SIGNED_ZEROS to fall
        back to maximum.
        (expand_unop): Likewise.  Use HONOR_SIGNED_ZEROS to fall back
        negation to subtraction.
        (expand_copysign): Check that the format has signed zeros.
        Use operand_subword and emit_no_conflict_block.  Support large modes.

From-SVN: r94465

19 years agore PR c++/19457 (Warning depends on cached constant)
Mark Mitchell [Mon, 31 Jan 2005 01:17:11 +0000 (01:17 +0000)]
re PR c++/19457 (Warning depends on cached constant)

PR c++/19457
* call.c (convert_like_real): Inline call to
dubious_conversion_warnings here.
* cp-tree.h (dubious_conversion_warnings): Remove.
* semantics.c (finish_unary_op_expr): Copy INTEGER_CSTs before
setting TREE_NEGATED_INT.
* typeck.c (dubious_conversion_warnings): Remove.

PR c++/19349
* name-lookup.c (pushdecl_namespace_level): Avoid accessing free'd
memory.

PR c++/19457
* g++.dg/warn/conv3.C: New test.

From-SVN: r94463

19 years agoDaily bump.
GCC Administrator [Mon, 31 Jan 2005 00:16:26 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r94457

19 years agoI swear this was in there when i committed, but apparently not
Daniel Berlin [Sun, 30 Jan 2005 21:37:52 +0000 (21:37 +0000)]
I swear this was in there when i committed, but apparently not

From-SVN: r94449

19 years agore PR tree-optimization/19624 (PRE pessimizes ivopts)
Daniel Berlin [Sun, 30 Jan 2005 19:08:37 +0000 (19:08 +0000)]
re PR tree-optimization/19624 (PRE pessimizes ivopts)

2005-01-30  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/19624

* Makefile.in (tree-ssa-pre.o): Add CFGLOOP_H.
* tree-ssa-pre.c: Add cfgloop.h.
Update comment.
(pre_stats): New member, constified.
(inserted_exprs): New static variable.
(NECESSARY): New macro.
(create_expression_by_pieces): Fold the expression, and
mark it as defaulting to not necessary. Also put in
inserted_exprs.
(fully_constant_expression): New function.
(insert_into_preds_of_block): Modify to not insert phis when we
are playing with induction variables.
Push phis onto the inserted_exprs vector, and mark them as not
necessary by default.
(insert_aux): Call fully_constant_expression on eprime.
If all edges produce the same value, mark it constant.
(mark_operand_necessary): New function.
(remove_dead_inserted_code): New function.
(init_pre): Init loop optimizer to get loop info.
(fini_pre): Free loop_optimizer, and inserted_exprs vec.
(execute_pre): Commit edge inserts, then remove dead code.

From-SVN: r94448

19 years ago* options.c (gfc_init_options): Zero flag_errno_math.
Richard Henderson [Sun, 30 Jan 2005 18:34:03 +0000 (10:34 -0800)]
* options.c (gfc_init_options): Zero flag_errno_math.

From-SVN: r94447

19 years agortl.c (rtx_equal_p): No early exit for CONST_VECTOR.
Richard Henderson [Sun, 30 Jan 2005 18:27:23 +0000 (10:27 -0800)]
rtl.c (rtx_equal_p): No early exit for CONST_VECTOR.

        * rtl.c (rtx_equal_p): No early exit for CONST_VECTOR.
        * varasm.c (const_rtx_hash_1): Handle CONST_VECTOR.

From-SVN: r94446

19 years agoPR 19700 testcase.
Richard Henderson [Sun, 30 Jan 2005 17:55:12 +0000 (09:55 -0800)]
PR 19700 testcase.

From-SVN: r94443

19 years agore PR target/19700 (ICE in final_scan_insn with O1 -g -march=athlon-xp -mfpmath=sse)
Richard Henderson [Sun, 30 Jan 2005 17:48:01 +0000 (09:48 -0800)]
re PR target/19700 (ICE in final_scan_insn with O1 -g -march=athlon-xp -mfpmath=sse)

        PR target/19700
        * config/i386/i386.c (ix86_expand_copysign): New.
        (ix86_split_copysign_const): New.
        (ix86_split_copysign_var): Rename from ix86_split_copysign,
        rearrange op1/nmask operands.
        * config/i386/i386-protos.h: Update.
        * config/i386/i386.md (copysignsf3): Use ix86_expand_copysign.
        (copysigndf3): Likewise.
        (copysignsf3_const, copysigndf3_const): New.
        (copysignsf3_var): Rename from copysignsf3, split out splitter
        and fix split predicate for X constraint.
        (copysigndf3_var): Similarly.

From-SVN: r94442

19 years agooptabs.c, [...]: Update copyright.
Kazu Hirata [Sun, 30 Jan 2005 15:36:13 +0000 (15:36 +0000)]
optabs.c, [...]: Update copyright.

* optabs.c, doc/c-tree.texi, doc/install.texi, doc/md.texi,
doc/passes.texi, doc/rtl.texi, doc/sourcebuild.texi,
doc/tm.texi, doc/tree-ssa.texi: Update copyright.

From-SVN: r94441

19 years agore PR libstdc++/19642 (streaming doubles is very slow compared to sprintf)
Paolo Carlini [Sun, 30 Jan 2005 14:09:58 +0000 (14:09 +0000)]
re PR libstdc++/19642 (streaming doubles is very slow compared to sprintf)

2005-01-30  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/19642
* config/locale/generic/c_locale.h (__convert_from_v): Switch only
LC_NUMERIC, and only when actually != "C".

From-SVN: r94440

19 years agore PR libfortran/19647 (inquire(delim=) returns garbage)
Bud Davis [Sun, 30 Jan 2005 13:16:19 +0000 (13:16 +0000)]
re PR libfortran/19647 (inquire(delim=) returns garbage)

2005-01-30  Bud Davis  <bdavis@gfortran.org>

        PR fortran/19647
        * io/inquire.c (inquire_via_unit): Use correct variable for
        pad.

        * gfortan.dg/inquire_7.f90

From-SVN: r94439

19 years agore PR target/19690 (ICE with -O3 -march=athlon-xp -mfpmath=sse -mno-80387)
Richard Henderson [Sun, 30 Jan 2005 03:14:44 +0000 (19:14 -0800)]
re PR target/19690 (ICE with -O3 -march=athlon-xp -mfpmath=sse -mno-80387)

        PR target/19690
        * config/i386/i386.md (movdf_nointeger, movdf_integer): Fix ordering
        of # and * in constraints.

From-SVN: r94433

19 years agore PR middle-end/19689 (ICE in store_bit_field, at expmed.c)
Richard Henderson [Sun, 30 Jan 2005 02:33:27 +0000 (18:33 -0800)]
re PR middle-end/19689 (ICE in store_bit_field, at expmed.c)

        PR middle-end/19689
        * expr.c (store_field): Don't strip sub-mode cast when the input
        data is even smaller.

From-SVN: r94429

19 years agore PR middle-end/19687 (ICE with union initializer)
Richard Henderson [Sun, 30 Jan 2005 02:13:46 +0000 (18:13 -0800)]
re PR middle-end/19687 (ICE with union initializer)

        PR middle-end/19687
        * expr.c (categorize_ctor_elements_1): Check for CONSTRUCTOR of a
        union being empty.

From-SVN: r94421

19 years agocombine.c (make_field_assignment): Fix argument order to gen_int_mode.
Richard Henderson [Sun, 30 Jan 2005 00:27:01 +0000 (16:27 -0800)]
combine.c (make_field_assignment): Fix argument order to gen_int_mode.

        * combine.c (make_field_assignment): Fix argument order
        to gen_int_mode.

From-SVN: r94420

19 years agoDaily bump.
GCC Administrator [Sun, 30 Jan 2005 00:16:18 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r94417

19 years agore PR tree-optimization/15791 (fold misses that two ADDR_EXPR of an arrary obvious...
Richard Guenther [Sat, 29 Jan 2005 19:25:17 +0000 (19:25 +0000)]
re PR tree-optimization/15791 (fold misses that two ADDR_EXPR of an arrary obvious not equal)

2005-01-29  Richard Guenther <richard.guenther@uni-tuebingen.de>

PR tree-optimization/15791
* fold-const.c (extract_array_ref): New function.
(fold): Fold comparisons between &a[i] and &a[j] or
semantically equivalent trees.

* gcc.dg/tree-ssa/pr15791-1.c: New testcase.
* gcc.dg/tree-ssa/pr15791-2.c: Likewise.
* gcc.dg/tree-ssa/pr15791-3.c: Likewise.
* gcc.dg/tree-ssa/pr15791-4.c: Likewise.
* gcc.dg/tree-ssa/pr15791-5.c: Likewise.
* g++.dg/tree-ssa/pr15791-1.C: Likewise.
* g++.dg/tree-ssa/pr15791-2.C: Likewise.
* g++.dg/tree-ssa/pr15791-3.C: Likewise.
* g++.dg/tree-ssa/pr15791-4.C: Likewise.
* g++.dg/tree-ssa/pr15791-5.C: Likewise.

From-SVN: r94414

19 years agogcse.c (insert_expr_in_table): Revamp handling of available and anticipatable occurre...
Jeff Law [Sat, 29 Jan 2005 18:55:10 +0000 (11:55 -0700)]
gcse.c (insert_expr_in_table): Revamp handling of available and anticipatable occurrence lists to avoid...

        * gcse.c (insert_expr_in_table): Revamp handling of available
        and anticipatable occurrence lists to avoid unnecessary list
        walking.
        (insert_set_in_table): Similarly.

From-SVN: r94413

19 years agore PR fortran/18565 (gfortran: CONJG: false error message about standard violation)
Paul Brook [Sat, 29 Jan 2005 17:46:34 +0000 (17:46 +0000)]
re PR fortran/18565 (gfortran: CONJG: false error message about standard violation)

2005-01-29  Paul Brook  <paul@codesourcery.com>

PR fortran/18565
* check.c (real_or_complex_check): New function.
(gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc): New functions.
* intrinsic.c (add_functions): Use new check functions.
* intrinsic.h (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc):
Add prototypes.
testsuite/
* gfortran.dg/double_complex_1.f90: New test.

From-SVN: r94412

19 years agoc-common.c (fix_string_type): Just use c_build_qualified_type to build string type.
Joseph Myers [Sat, 29 Jan 2005 16:12:45 +0000 (16:12 +0000)]
c-common.c (fix_string_type): Just use c_build_qualified_type to build string type.

* c-common.c (fix_string_type): Just use c_build_qualified_type to
build string type.
(c_build_qualified_type): Build qualified array types with
TYPE_MAIN_VARIANT pointing to corresponding unqualified type.
* c-decl.c (c_make_fname_decl): Build unqualified array type
before qualified type.
(grokdeclarator): Use TYPE_MAIN_VARIANT of typedef type if element
type is qualified, not just if type itself is.  Don't apply
qualifiers to array type when declarator is processed.  Apply
qualifiers to field type whether or not it is an array type.
Don't handle array types specially for applying qualifiers to
variables.
* c-typeck.c (composite_type): Build unqualified element type and
array type when forming composite of array types.
(common_pointer_type, comptypes, comp_target_types,
type_lists_compatible_p, build_indirect_ref, build_array_ref,
convert_for_assignment): Don't apply TYPE_MAIN_VARIANT to array
types.
(type_lists_compatible_p): Cache TREE_VALUE (args1) and TREE_VALUE
(args2) in variables a1 and a2.

testsuite:
* gcc.dg/Wwrite-strings-1.c, gcc.dg/array-quals-2.c,
gcc.dg/lvalue-3.c: New tests.
* gcc.dg/concat.c: Update expected messages.

From-SVN: r94411

19 years agore PR libfortran/19595 ([4.0 only] eor does not work)
Thomas Koenig [Sat, 29 Jan 2005 15:45:17 +0000 (15:45 +0000)]
re PR libfortran/19595 ([4.0 only] eor does not work)

2005-01-29  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/19595
* io/transfer.c (data_transfer_init): eor requires advance="NO".
testsuite/
* gfortran.dg/eor_1.f90:  New test.

From-SVN: r94410

19 years agore PR fortran/19589 (Regression: Error on Data assignment with LOGICAL*1)
Steven G. Kargl [Sat, 29 Jan 2005 15:35:50 +0000 (15:35 +0000)]
re PR fortran/19589 (Regression: Error on Data assignment with LOGICAL*1)

2005-01-29  Steven G. Kargl  <kargls@comcast.net>

PR fortran/19589
* expr.c (gfc_check_assign):  Check for conformance of logical operands
testsuite/
* gfortran.dg/logical_data_1.f90: New test.

From-SVN: r94409

19 years agolang-specs.h, [...]: Update copyright.
Kazu Hirata [Sat, 29 Jan 2005 12:16:36 +0000 (12:16 +0000)]
lang-specs.h, [...]: Update copyright.

* lang-specs.h, objc-act.c, objc-act.h, objc-lang.c: Update
copyright.

From-SVN: r94408

19 years agocse.c (n_elements_made, [...]): Remove.
Kazu Hirata [Sat, 29 Jan 2005 12:08:04 +0000 (12:08 +0000)]
cse.c (n_elements_made, [...]): Remove.

* cse.c (n_elements_made, max_elements_made): Remove.
(insert): Don't touch n_elements_made.
(cse_main): Don't touch n_elements_made or max_elements_made.

From-SVN: r94407

19 years agoconfigure.in (noconfigdirs): Match like cris-*-*.
Hans-Peter Nilsson [Sat, 29 Jan 2005 04:22:08 +0000 (04:22 +0000)]
configure.in (noconfigdirs): Match like cris-*-*.

* configure.in (noconfigdirs) <crisv32-*-*>: Match like cris-*-*.
<crisv32-*-*, cris-*-*>: Only disable target-newlib and
target-libgloss when not *-*-elf and *-*-aout.
* configure: Regenerate.

From-SVN: r94404

19 years agore PR c++/19253 (bad error message / ICE for invalid template parameter)
Mark Mitchell [Sat, 29 Jan 2005 02:07:18 +0000 (02:07 +0000)]
re PR c++/19253 (bad error message / ICE for invalid template parameter)

PR c++/19253
* parser.c (cp_parser_diagnose_invalid_type_name): Commit to
tentative parses.

PR c++/19253
* g++.dg/template/crash33.C: New test.

From-SVN: r94403

19 years agore PR c++/19667 (ICE on (very trivial) invalid)
Mark Mitchell [Sat, 29 Jan 2005 00:47:57 +0000 (00:47 +0000)]
re PR c++/19667 (ICE on (very trivial) invalid)

PR c++/19667
* g++.dg/template/crash32.C: New test.

PR c++/19667
* pt.c (redeclare_class_template): Robustify.

From-SVN: r94402

19 years agore PR libgcj/19649 (java.util.Date.getTimezoneOffset returns negated output)
Jeroen Frijters [Sat, 29 Jan 2005 00:43:50 +0000 (00:43 +0000)]
re PR libgcj/19649 (java.util.Date.getTimezoneOffset returns negated output)

2004-01-28  Jeroen Frijters  <jeroen@frijters.net>

PR libgcj/19649
* java/util/Date.java
(Date(int,int,int), Date(int,int,int,int,int)): Delegate to other
constructor.
(Date(int,int,int,int,int,int)): Fixed to handle out-of-range
arguments.
(getTimezoneOffset): Inverted sign.

From-SVN: r94401

19 years agoDaily bump.
GCC Administrator [Sat, 29 Jan 2005 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r94399

19 years agore PR target/15384 (Lines witout effect in t-m68hc11-gas file)
Stephane Carrez [Fri, 28 Jan 2005 22:08:16 +0000 (23:08 +0100)]
re PR target/15384 (Lines witout effect in t-m68hc11-gas file)

PR target/15384
* config/m68hc11/t-m68hc11-gas (dp-bit.c): Fix typo causing a
configuration part of dp-bit.c to be lost.

From-SVN: r94390

19 years agotype_traits (is_function): Minor consistency tweaks.
Paolo Carlini [Fri, 28 Jan 2005 21:00:19 +0000 (21:00 +0000)]
type_traits (is_function): Minor consistency tweaks.

2005-01-28  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits (is_function): Minor consistency tweaks.

From-SVN: r94385

19 years agolibstdc++.exp (libstdc++_init): Search the path for the compiler.
Geoffrey Keating [Fri, 28 Jan 2005 18:57:59 +0000 (18:57 +0000)]
libstdc++.exp (libstdc++_init): Search the path for the compiler.

* testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
for the compiler.  Don't set cxxflags.
(v3_target_compile): Search for libv3test.a relative to $objdir.
(lsearch_all_inline): New.
(lsearch_all_inline_not): New.
(v3-list-tests): Rewrite to not need generated files.
* testsuite/Makefile.am (IGNORE_WCHAR_T): New.
(IGNORE_THREAD): New.
(TESTS_TO_IGNORE): New.
(site.exp): Set tests_to_ignore, cxxflags.
* aclocal.m4: Regenerate.
* Makefile.in: Regenerate.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.

From-SVN: r94384

19 years agoexpmed.c (expand_mult_highpart_optab): When attempting to use a non-widening multipli...
Roger Sayle [Fri, 28 Jan 2005 17:49:47 +0000 (17:49 +0000)]
expmed.c (expand_mult_highpart_optab): When attempting to use a non-widening multiplication in a wider mode...

* expmed.c (expand_mult_highpart_optab): When attempting to use
a non-widening multiplication in a wider mode, the operands need
to be converted (zero or sign extended) to that mode.

From-SVN: r94383

19 years agore PR middle-end/16558 (bogus missing-return warning)
Ian Lance Taylor [Fri, 28 Jan 2005 17:33:54 +0000 (17:33 +0000)]
re PR middle-end/16558 (bogus missing-return warning)

PR middle-end/16558
* g++.dg/warn/Wreturn-type-2.C: New test.

From-SVN: r94382

19 years agore PR middle-end/16558 (bogus missing-return warning)
Ian Lance Taylor [Fri, 28 Jan 2005 17:32:57 +0000 (17:32 +0000)]
re PR middle-end/16558 (bogus missing-return warning)

PR middle-end/16558
PR middle-end/19583
* gimple-low.c (block_may_fallthru): TRY_FINALLY_EXPR only falls
through if both operands fall through.

From-SVN: r94381

19 years agotype_traits: Implement is_empty.
Paolo Carlini [Fri, 28 Jan 2005 17:20:43 +0000 (17:20 +0000)]
type_traits: Implement is_empty.

2005-01-28  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Implement is_empty.
* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
is_empty.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
typedefs.cc: Likewise.

* include/tr1/type_traits (__is_abstract_helper): Simplify a bit.

From-SVN: r94379

19 years ago* cse.c (fold_rtx) <PC>: Don't optimize.
Kazu Hirata [Fri, 28 Jan 2005 17:12:08 +0000 (17:12 +0000)]
* cse.c (fold_rtx) <PC>: Don't optimize.

From-SVN: r94378