Jerry DeLisle [Fri, 30 Nov 2007 23:19:34 +0000 (23:19 +0000)]
re PR libfortran/34291 (Segfault in io/list_read.c handling of end conditions)
2007-11-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/34291
* io/list_read.c (read_character): When reading an unquoted string,
return if special characters that could signify the end of the namelist
read are encountered.
Seongbae Park [Fri, 30 Nov 2007 17:02:43 +0000 (17:02 +0000)]
re PR rtl-optimization/34171 (Segfault in df_chain_remove_problem with -O3 on alpha)
gcc/testsuite/ChangeLog:
2007-11-30 Martin Michlmayr <tbm@cyrius.com>
PR rtl-optimization/34171
* gcc.dg/pr34171.c: New testcase.
gcc/ChangeLog:
2007-11-30 Seongbae Park <seongbae.park@gmail.com>
PR rtl-optimization/34171
* cfgrtl.c (update_bb_for_insn_chain): New function,
refactored from update_bb_for_insn.
(update_bb_for_insn): Call update_bb_for_insn.
(rtl_merge_blocks, try_redirect_by_replacing_jump):
Replace a loop with update_bb_for_insn_chain call.
(cfg_layout_merge_blocks): Add a call to
update_bb_for_insn_chain. Replace the for loop
with a call to update_bb_for_insn_chain.
Tobias Burnus [Fri, 30 Nov 2007 12:16:35 +0000 (13:16 +0100)]
re PR fortran/34133 (Bind(c,name="") should be rejected for dummies; F2008: allow bind(c) for internal procs)
2007-11-20 Tobias Burnus <burnus@net-b.de>
PR fortran/34133
* match.h: Add bool allow_binding_name to gfc_match_bind_c.
* decl.c
* (match_attr_spec,gfc_match_bind_c_stmt,gfc_match_entry):
Adjust accordingly.
(gfc_match_bind_c): Add allow_binding_name argument, reject
binding name for dummy arguments.
(gfc_match_suffix,gfc_match_subroutine): Make use of
allow_binding_name.
Steven G. Kargl [Fri, 30 Nov 2007 04:10:47 +0000 (04:10 +0000)]
re PR fortran/34230 (Expressions of parameters evaluated with too high precision)
2007-11-29 Steven G. Kargl <kargls@comcast.net>
PR fortran/34230
* fortran/arith.c (gfc_check_real_range): Set intermediate values
to +-Inf and 0 when -fno-range-check is in effect.
* fortran/invoke.texi: Improve -fno-range-check description.
PR fortran/34203
* fortran/invoke.texi: Document the C escaped characters activated
by -fbackslash.
* config-ml.in: Robustify against white space in absolute file
names.
* config-ml.in (multi-clean): Substitute ${Makefile}.
Remove superfluous ${Makefile} in list.
libgomp:
2007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
Paolo Bonzini <bonzini@gnu.org>
* Makefile.am: Use space as vpath separator. Use 'vpath %'
instead of 'VPATH ='.
* Makefile.in: Regenerate.
gcc:
2007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
* Makefile.in: Use separate vpath lines for each path.
libstdc++-v3:
2007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
* src/Makefile.am: Use separate vpath lines for each path.
M libgomp/Makefile.in
M libgomp/ChangeLog
M libgomp/Makefile.am
M gcc/ChangeLog
M gcc/Makefile.in
M libstdc++-v3/src/Makefile.in
M libstdc++-v3/src/Makefile.am
M libstdc++-v3/ChangeLog
M ChangeLog
Tobias Burnus [Thu, 29 Nov 2007 14:56:48 +0000 (15:56 +0100)]
re PR fortran/34262 (MVBITS does not work for arrays)
2007-11-29 Tobias Burnus <burnus@net-b.de>
PR fortran/34262
* intrinsic.c (gfc_get_intrinsic_sub_symbol): Add comment.
(gfc_intrinsic_sub_interface): Copy elemental state if needed.
* iresolve.c (gfc_resolve_mvbits): Mark procedure as elemental.
Samuel Tardieu [Wed, 28 Nov 2007 20:46:18 +0000 (20:46 +0000)]
re PR ada/32792 (Assert_Failure sinfo.adb:1730)
gcc/ada/
PR ada/32792
* sem_attr.adb (Analyze_Attribute, Attribute_Integer_Value clause):
Signal an error when attribute argument is a fixed-point value of
an unknown type.
gcc/testsuite/
PR ada/32792
* gnat.dg/specs/integer_value.ads: New test.
Samuel Tardieu [Wed, 28 Nov 2007 20:44:58 +0000 (20:44 +0000)]
re PR target/17317 (Match Constraints for *movdf_insn fails)
gcc/ada/
PR ada/17317
* par-ch4.adb (Is_Parameterless_Attribute): New map.
(P_Name, Scan_Apostrophe block): Parse left parenthesis following
attribute name or not depending on the new map.
* sem-attr.adb (Analyze_Attribute): Parameterless attributes
returning a string or a type will not be called with improper
arguments.
* sem-attr.ads (Attribute_Class_Array): Move to snames.ads.
* snames.ads (Attribute_Class_Array): Moved from sem-attr.ads.
gcc/testsuite/
PR ada/17317
* gnat.dg/specs/attribute_parsing.ads: New test.
Johannes Singler [Wed, 28 Nov 2007 17:38:49 +0000 (17:38 +0000)]
multiway_merge.h: Destruct only elements that were have been constructed before.
2007-11-28 Johannes Singler <singler@ira.uka.de>
* include/parallel/multiway_merge.h: Destruct only elements that
were have been constructed before. Code beautifying and formatting.
* include/parallel/losertree.h: (Copy) construct all loser tree
item keys, so they can be deconstructed all at once.
* include/parallel/quicksort.h: Fix memory leak.
* include/parallel/random_shuffle.h: Use copy constructor instead
of assignment. Code beautifying and formatting.
* include/parallel/unique_copy.h: Use assignment instead of copy
constructor.
* include/parallel/multiway_mergesort.h: Use copy constructor
instead of assignment. Code beautifying and formatting.
* include/parallel/random_shuffle.h: Use copy constructor instead
of assignment. Code beautifying.
Paul Thomas [Tue, 27 Nov 2007 20:47:55 +0000 (20:47 +0000)]
re PR fortran/29389 (Statement functions are not recognized as pure when they are)
2007-11-27 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29389
*resolve.c (resolve_ordinary_assign): Use find_sym_in_expr to
test if a temporary should be written for a vector subscript
on the lhs.
PR fortran/33850
* restore.c (pure_stmt_function): Add prototype and new
function. Calls impure_stmt_fcn.
(pure_function): Call it.
(impure_stmt_fcn): New function.
* expr.c (gfc_traverse_expr): Call *func for all expression
types, not just variables. Add traversal of character lengths,
iterators and component character lengths and arrayspecs.
(expr_set_symbols_referenced): Return false if not a variable.
* trans-stmt.c (forall_replace, forall_restore): Ditto.
* resolve.c (forall_index): Ditto.
(sym_in_expr): New function.
(find_sym_in_expr): Rewrite to traverse expression calling
sym_in_expr.
*trans-decl.c (expr_decls): New function.
(generate_expr_decls): Rewrite to traverse expression calling
expr_decls.
*match.c (check_stmt_fcn): New function.
(recursive_stmt_fcn): Rewrite to traverse expression calling
check_stmt_fcn.
2007-11-27 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29389
* gfortran.dg/stfunc_6.f90: New test.
PR fortran/33850
* gfortran.dg/assign_10.f90: New test.
Paul Thomas [Tue, 27 Nov 2007 19:21:52 +0000 (19:21 +0000)]
re PR fortran/33541 (gfortran wrongly imports renamed-use-associated symbol unrenamed)
2007-11-27 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33541
*interface.c (compare_actual_formal): Exclude assumed size
arrays from the possibility of scalar to array mapping.
* decl.c (get_proc_name): Fix whitespace problem.
PR fortran/34231
* gfortran.h : Add 'use_rename' bit to symbol_attribute.
* module.c : Add 'renamed' field to pointer_info.u.rsym.
(load_generic_interfaces): Add 'renamed' that is set after the
number_use_names is called. This is used to set the attribute
use_rename, which, in its turn identifies those symbols that
have not been renamed.
(load_needed): If pointer_info.u.rsym->renamed is set, then
set the use_rename attribute of the symbol.
(read_module): Correct an erroneous use of use_flag. Use the
renamed flag and the use_rename attribute to determine which
symbols are not renamed.
2007-11-27 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33541
* gfortran.dg/use_11.f90: New test.
PR fortran/34231
* gfortran.dg/generic_15.f90: New test.
Richard Guenther [Tue, 27 Nov 2007 12:30:15 +0000 (12:30 +0000)]
builtins.c (fold_builtin_1): Verify the argument types of BUILT_IN_ISNORMAL.
2007-11-27 Richard Guenther <rguenther@suse.de>
* builtins.c (fold_builtin_1): Verify the argument types
of BUILT_IN_ISNORMAL.
(fold_builtin_n): Verify the number of arguments to variadic
built-in functions.
Paolo Carlini [Tue, 27 Nov 2007 01:59:41 +0000 (01:59 +0000)]
locale_facets.tcc (num_put<>::_M_insert_int): When ios_base::showpos and the type is signed and the value is zero, prepend +.
2007-11-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_put<>::_M_insert_int): When
ios_base::showpos and the type is signed and the value is zero,
prepend +.
* testsuite/22_locale/num_put/put/char/12.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
re PR c/23722 (bad error recovery with if blocks and else)
2007-11-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c/23722
* c-parser.c (struct c_parser): New bit in_if_block.
(c_parser_compound_statement_nostart): Handle unexpected 'else'
keyword.
(c_parser_statement_after_labels): Set in_if_block to false while
parsing.
(c_parser_if_body): Don't call c_parser_statement_after_labels if
a semicolon is found, just consume it. Don't call
c_parser_statement_after_labels if an open brace is found, call
c_parser_compound_statement instead.
(c_parser_else_body): New.
(c_parser_if_statement): Set in_if_block to true when parsing the
body of the 'if' statement. Use c_parser_else_body.
Nick Clifton [Mon, 26 Nov 2007 12:34:29 +0000 (12:34 +0000)]
mn10300.md: (call_internal): Remove mode on operand 0 in order to match UNPSEC'ed calls...
* config/mn10300/mn10300.md: (call_internal): Remove mode on
operand 0 in order to match UNPSEC'ed calls generated in PIC mode.
(call_value_internal): Remove mode on operands 0 and 1 in order to
match UNPSEC'ed calls generated in PIC mode.
(GOTaddr2picreg): Use copy_rtx to prevent sharing an rtx between
two insns.
Alexandre Oliva [Mon, 26 Nov 2007 06:24:54 +0000 (06:24 +0000)]
tree-ssa-live.c (remove_unused_scope_block_p): Drop declarations and blocks only after inlining.
* tree-ssa-live.c (remove_unused_scope_block_p): Drop
declarations and blocks only after inlining. Check that
non-empty blocks are not dropped.
* tree-inline.c (expand_call_inline): Check that functions are
not inlined too late.
Tobias Burnus [Sun, 25 Nov 2007 22:15:47 +0000 (23:15 +0100)]
Forgot trans-expr.c in previous commit:
2007-11-25 Tobias Burnus <burnus@net-b.de>
PR fortran/34079
* trans-types.c (gfc_return_by_reference,
gfc_get_function_type): Do not return result of
character-returning bind(C) functions as argument.
* trans-expr.c (gfc_conv_function_call): Ditto.
Jerry DeLisle [Sun, 25 Nov 2007 22:12:19 +0000 (22:12 +0000)]
re PR fortran/33152 (Initialization/declaration problems in block data)
2007-11-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33152
* decl.c (add_init_expr_to_sym): Remove error message.
* resolve.c (check_data_variable): Add new check for a data variable
that has an array spec, but no ref and issue an error.
* match.c (gfc_match_common): Remove error message.
Tobias Burnus [Sun, 25 Nov 2007 22:02:53 +0000 (23:02 +0100)]
re PR fortran/34079 (Bind(C): Character argument/return value problems)
2007-11-25 Tobias Burnus <burnus@net-b.de>
PR fortran/34079
* trans-types.c (gfc_return_by_reference,
gfc_get_function_type): Do not return result of
character-returning bind(C) functions as argument.
* trans-expr.c (gfc_conv_function_call): Ditto.