-2010-04-21 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/43836
- * f95-lang.c (gfc_define_builtin): Set TREE_NOTHROW on
- the decl.
-
-2010-04-20 Harald Anlauf <anlauf@gmx.de>
-
- * intrinsic.c (sort_actual): Remove 'is' in error message.
-
-2010-04-20 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/43227
- * resolve.c (resolve_fl_derived): If a component character
- length has not been resolved, do so now.
- (resolve_symbol): The same as above for a symbol character
- length.
- * trans-decl.c (gfc_create_module_variable): A 'length' decl is
- not needed for a character valued, procedure pointer.
-
- PR fortran/43266
- * resolve.c (ensure_not_abstract_walker): If 'overriding' is
- not found, return FAILURE rather than ICEing.
-
-2010-04-19 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/43339
- * openmp.c (gfc_resolve_do_iterator): Only make iteration vars for
- sequential loops private in the innermost containing task region.
-
-2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
-
- * f95-lang.c (gfc_init_decl_processing): Remove second argument in call
- to build_common_tree_nodes.
-
-2010-04-17 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/31538
- * fortran/trans-array.c (gfc_conv_ss_startstride): Remove the use of
- gfc_msg_bounds by using 'Array bound mismatch' directly.
- (gfc_trans_dummy_array_bias): Remove the use of gfc_msg_bounds. Reword
- error message to include the mismatch in the extent of array bound.
- * fortran/trans.c: Remove gfc_msg_bounds. It is only used in one place.
- * fortran/trans.h: Remove extern definition of gfc_msg_bounds.
-
-2010-04-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * gfortran.texi: Update information on temporary file locations.
-
-2010-04-16 Jakub Jelinek <jakub@redhat.com>
-
- * trans-decl.c (gfc_build_qualified_array): Ensure
- ubound.N and lbound.N artificial variable names don't appear
- in debug info.
-
-2010-04-15 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/30073
- * trans-array.c (gfc_trans_array_bound_check): Eliminate a redundant
- block of code. Set name to the variable associated with the descriptor.
-
-2010-04-15 Jakub Jelinek <jakub@redhat.com>
-
- * trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P
- on VAR_DECL LBOUND and/or UBOUND, even for -O1.
-
-2010-04-14 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * intrinsic.texi: Add the missing specific name of intrinsic
- procedure where the specific name is identical to the generic name.
- Fix inconsistent or mismatch in the argument names in intrinsic
- procedure descriptions. Add the SCALAR allocatable description to
- ALLOCATED.
-
-2010-04-14 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/18918
- * array.c (gfc_find_array_ref): Handle codimensions.
- (gfc_match_array_spec,gfc_match_array_ref): Use gfc_fatal_error.
- * check.c (is_coarray, dim_corank_check, gfc_check_lcobound,
- gfc_check_image_index, gfc_check_this_image, gfc_check_ucobound):
- New functions.
- * gfortran.h (gfc_isym_id): Add GFC_ISYM_IMAGE_INDEX,
- GFC_ISYM_LCOBOUND, GFC_ISYM_THIS_IMAGE,
- GFC_ISYM_UCOBOUND.
- * intrinsic.h (add_functions): Add this_image, image_index,
- lcobound and ucobound intrinsics.
- * intrinsic.c (gfc_check_lcobound,gfc_check_ucobound,
- gfc_check_image_index, gfc_check_this_image,
- gfc_simplify_image_index, gfc_simplify_lcobound,
- gfc_simplify_this_image, gfc_simplify_ucobound):
- New function prototypes.
- * intrinsic.texi (IMAGE_INDEX, LCOBOUND, THIS_IMAGE
- IMAGE_INDEX): Document new intrinsic functions.
- * match.c (gfc_match_critical, sync_statement): Make -fcoarray=none
- error fatal.
- * simplify.c (simplify_bound_dim): Handle coarrays.
- (simplify_bound): Update simplify_bound_dim call.
- (gfc_simplify_num_images): Add -fcoarray=none check.
- (simplify_cobound, gfc_simplify_lcobound, gfc_simplify_ucobound,
- gfc_simplify_ucobound, gfc_simplify_ucobound): New functions.
-
-2010-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/43747
- * constructor.c: Fix typo in comment.
- * expr.c (find_array_section): Add check for max array limit.
-
-2010-04-13 Iain Sandoe <iains@gcc.gnu.org>
-
- PR bootstrap/31400
- * gfortranspec.c (lookup_option): Check for -static and return
- OPTION_static.
- (lang_specific_driver): Break when OPTION_static is discovered.
-
-2010-04-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * array.c (extract_element): Restore function from trunk.
- (gfc_get_array_element): Restore function from trunk.
- (gfc_expand_constructor): Restore check against
- flag_max_array_constructor.
- * constructor.c (node_copy_and_append): Delete unused.
- * gfortran.h: Delete comment and extra include.
- * constructor.h: Bump copyright and clean up TODO comments.
- * resolve.c: Whitespace.
-
-2010-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- * simplify.c (compute_dot_product): Replaced usage of ADVANCE macro
- with direct access access to elements. Adjusted prototype, fixed all
- callers.
- (gfc_simplify_dot_product): Removed duplicate check for zero-sized
- array.
- (gfc_simplify_matmul): Removed usage of ADVANCE macro.
- (gfc_simplify_spread): Removed workaround, directly insert elements
- at a given array position.
- (gfc_simplify_transpose): Likewise.
- (gfc_simplify_pack): Replaced usage of ADVANCE macro with corresponding
- function calls.
- (gfc_simplify_unpack): Likewise.
-
-2010-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- * simplify.c (only_convert_cmplx_boz): Renamed to ...
- (convert_boz): ... this and moved to start of file.
- (gfc_simplify_abs): Whitespace fix.
- (gfc_simplify_acos): Whitespace fix.
- (gfc_simplify_acosh): Whitespace fix.
- (gfc_simplify_aint): Whitespace fix.
- (gfc_simplify_dint): Whitespace fix.
- (gfc_simplify_anint): Whitespace fix.
- (gfc_simplify_and): Replaced if-gate by more common switch-over-type.
- (gfc_simplify_dnint): Whitespace fix.
- (gfc_simplify_asin): Whitespace fix.
- (gfc_simplify_asinh): Moved creation of result-expr out of switch.
- (gfc_simplify_atan): Likewise.
- (gfc_simplify_atanh): Whitespace fix.
- (gfc_simplify_atan2): Whitespace fix.
- (gfc_simplify_bessel_j0): Removed ATTRIBUTE_UNUSED.
- (gfc_simplify_bessel_j1): Likewise.
- (gfc_simplify_bessel_jn): Likewise.
- (gfc_simplify_bessel_y0): Likewise.
- (gfc_simplify_bessel_y1): Likewise.
- (gfc_simplify_bessel_yn): Likewise.
- (gfc_simplify_ceiling): Reorderd statements.
- (simplify_cmplx): Use convert_boz(), check for constant arguments.
- Whitespace fix.
- (gfc_simplify_cmplx): Use correct default kind. Removed check for
- constant arguments.
- (gfc_simplify_complex): Replaced if-gate. Removed check for
- constant arguments.
- (gfc_simplify_conjg): Whitespace fix.
- (gfc_simplify_cos): Whitespace fix.
- (gfc_simplify_cosh): Replaced if-gate by more common switch-over-type.
- (gfc_simplify_dcmplx): Removed check for constant arguments.
- (gfc_simplify_dble): Use convert_boz() and gfc_convert_constant().
- (gfc_simplify_digits): Whitespace fix.
- (gfc_simplify_dim): Whitespace fix.
- (gfc_simplify_dprod): Reordered statements.
- (gfc_simplify_erf): Whitespace fix.
- (gfc_simplify_erfc): Whitespace fix.
- (gfc_simplify_epsilon): Whitespace fix.
- (gfc_simplify_exp): Whitespace fix.
- (gfc_simplify_exponent): Use convert_boz().
- (gfc_simplify_floor): Reorderd statements.
- (gfc_simplify_gamma): Whitespace fix.
- (gfc_simplify_huge): Whitespace fix.
- (gfc_simplify_iand): Whitespace fix.
- (gfc_simplify_ieor): Whitespace fix.
- (simplify_intconv): Use gfc_convert_constant().
- (gfc_simplify_int): Use simplify_intconv().
- (gfc_simplify_int2): Reorderd statements.
- (gfc_simplify_idint): Reorderd statements.
- (gfc_simplify_ior): Whitespace fix.
- (gfc_simplify_ishftc): Removed duplicate type check.
- (gfc_simplify_len): Use range_check() instead of manual range check.
- (gfc_simplify_lgamma): Removed ATTRIBUTE_UNUSED. Whitespace fix.
- (gfc_simplify_log): Whitespace fix.
- (gfc_simplify_log10): Whitespace fix.
- (gfc_simplify_minval): Whitespace fix.
- (gfc_simplify_maxval): Whitespace fix.
- (gfc_simplify_mod): Whitespace fix.
- (gfc_simplify_modulo): Whitespace fix.
- (simplify_nint): Reorderd statements.
- (gfc_simplify_not): Whitespace fix.
- (gfc_simplify_or): Replaced if-gate by more common switch-over-type.
- (gfc_simplify_radix): Removed unused result-variable. Whitespace fix.
- (gfc_simplify_range): Removed unused result-variable. Whitespace fix.
- (gfc_simplify_real): Use convert_boz() and gfc_convert_constant().
- (gfc_simplify_realpart): Whitespace fix.
- (gfc_simplify_selected_char_kind): Removed unused result-variable.
- (gfc_simplify_selected_int_kind): Removed unused result-variable.
- (gfc_simplify_selected_real_kind): Removed unused result-variable.
- (gfc_simplify_sign): Whitespace fix.
- (gfc_simplify_sin): Whitespace fix.
- (gfc_simplify_sinh): Replaced if-gate by more common switch-over-type.
- (gfc_simplify_sqrt): Avoided goto by inlining check. Whitespace fix.
- (gfc_simplify_tan): Replaced if-gate by more common switch-over-type.
- (gfc_simplify_tanh): Replaced if-gate by more common switch-over-type.
- (gfc_simplify_xor): Replaced if-gate by more common switch-over-type.
-
-2010-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- * gfortran.h (gfc_start_constructor): Removed.
- (gfc_get_array_element): Removed.
- * array.c (gfc_start_constructor): Removed, use gfc_get_array_expr
- instead. Fixed all callers.
- (extract_element): Removed.
- (gfc_expand_constructor): Temporarily removed check for
- max-array-constructor. Will be re-introduced later if still required.
- (gfc_get_array_element): Removed, use gfc_constructor_lookup_expr
- instead. Fixed all callers.
- * expr.c (find_array_section): Replaced manual lookup of elements
- by gfc_constructor_lookup.
-
-2010-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- * gfortran.h (gfc_get_null_expr): New prototype.
- (gfc_get_operator_expr): New prototype.
- (gfc_get_character_expr): New prototype.
- (gfc_get_iokind_expr): New prototype.
- * expr.c (gfc_get_null_expr): New.
- (gfc_get_character_expr): New.
- (gfc_get_iokind_expr): New.
- (gfc_get_operator_expr): Moved here from matchexp.c (build_node).
- * matchexp.c (build_node): Renamed and moved to
- expr.c (gfc_get_operator_expr). Reordered arguments to match
- other functions. Fixed all callers.
- (gfc_get_parentheses): Use specific function to build expr.
- * array.c (gfc_match_array_constructor): Likewise.
- * arith.c (eval_intrinsic): Likewise.
- (gfc_hollerith2int): Likewise.
- (gfc_hollerith2real): Likewise.
- (gfc_hollerith2complex): Likewise.
- (gfc_hollerith2logical): Likewise.
- * data.c (create_character_intializer): Likewise.
- * decl.c (gfc_match_null): Likewise.
- (enum_initializer): Likewise.
- * io.c (gfc_match_format): Likewise.
- (match_io): Likewise.
- * match.c (gfc_match_nullify): Likewise.
- * primary.c (match_string_constant): Likewise.
- (match_logical_constant): Likewise.
- (build_actual_constructor): Likewise.
- * resolve.c (build_default_init_expr): Likewise.
- * symbol.c (generate_isocbinding_symbol): Likewise.
- (gfc_build_class_symbol): Likewise.
- (gfc_find_derived_vtab): Likewise.
- * simplify.c (simplify_achar_char): Likewise.
- (gfc_simplify_adjustl): Likewise.
- (gfc_simplify_adjustr): Likewise.
- (gfc_simplify_and): Likewise.
- (gfc_simplify_bit_size): Likewise.
- (gfc_simplify_is_iostat_end): Likewise.
- (gfc_simplify_is_iostat_eor): Likewise.
- (gfc_simplify_isnan): Likewise.
- (simplify_bound): Likewise.
- (gfc_simplify_leadz): Likewise.
- (gfc_simplify_len_trim): Likewise.
- (gfc_simplify_logical): Likewise.
- (gfc_simplify_maxexponent): Likewise.
- (gfc_simplify_minexponent): Likewise.
- (gfc_simplify_new_line): Likewise.
- (gfc_simplify_null): Likewise.
- (gfc_simplify_or): Likewise.
- (gfc_simplify_precision): Likewise.
- (gfc_simplify_repeat): Likewise.
- (gfc_simplify_scan): Likewise.
- (gfc_simplify_size): Likewise.
- (gfc_simplify_trailz): Likewise.
- (gfc_simplify_trim): Likewise.
- (gfc_simplify_verify): Likewise.
- (gfc_simplify_xor): Likewise.
- * trans-io.c (build_dt): Likewise.
- (gfc_new_nml_name_expr): Removed.
-
-2010-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- * arith.h (gfc_constant_result): Removed prototype.
- * constructor.h (gfc_build_array_expr): Removed prototype.
- (gfc_build_structure_constructor_expr): Removed prototype.
- * gfortran.h (gfc_int_expr): Removed prototype.
- (gfc_logical_expr): Removed prototype.
- (gfc_get_array_expr): New prototype.
- (gfc_get_structure_constructor_expr): New prototype.
- (gfc_get_constant_expr): New prototype.
- (gfc_get_int_expr): New prototype.
- (gfc_get_logical_expr): New prototype.
- * arith.c (gfc_constant_result): Moved and renamed to
- expr.c (gfc_get_constant_expr). Fixed all callers.
- * constructor.c (gfc_build_array_expr): Moved and renamed to
- expr.c (gfc_get_array_expr). Split gfc_typespec argument to type
- and kind. Fixed all callers.
- (gfc_build_structure_constructor_expr): Moved and renamed to
- expr.c (gfc_get_structure_constructor_expr). Split gfc_typespec argument
- to type and kind. Fixed all callers.
- * expr.c (gfc_logical_expr): Renamed to ...
- (gfc_get_logical_expr): ... this. Added kind argument. Fixed all callers.
- (gfc_int_expr): Renamed to ...
- (gfc_get_int_expr): ... this. Added kind and where arguments. Fixed all
- callers.
- (gfc_get_constant_expr): New.
- (gfc_get_array_expr): New.
- (gfc_get_structure_constructor_expr): New.
- * simplify.c (int_expr_with_kind): Removed, callers use gfc_get_int_expr
- instead.
-
-2010-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- * constructor.h: New.
- * constructor.c: New.
- * Make-lang.in: Add new files to F95_PARSER_OBJS.
- * arith.c (reducy_unary): Use constructor API.
- (reduce_binary_ac): Likewise.
- (reduce_binary_ca): Likewise.
- (reduce_binary_aa): Likewise.
- * check.c (gfc_check_pack): Likewise.
- (gfc_check_reshape): Likewise.
- (gfc_check_unpack): Likewise.
- * decl.c (add_init_expr_to_sym): Likewise.
- (build_struct): Likewise.
- * dependency.c (gfc_check_dependency): Likewise.
- (contains_forall_index_p): Likewise.
- * dump-parse-tree.c (show_constructor): Likewise.
- * expr.c (free_expr0): Likewise.
- (gfc_copy_expr): Likewise.
- (gfc_is_constant_expr): Likewise.
- (simplify_constructor): Likewise.
- (find_array_element): Likewise.
- (find_component_ref): Likewise.
- (find_array_section): Likewise.
- (find_substring_ref): Likewise.
- (simplify_const_ref): Likewise.
- (scalarize_intrinsic_call): Likewise.
- (check_alloc_comp_init): Likewise.
- (gfc_default_initializer): Likewise.
- (gfc_traverse_expr): Likewise.
- * iresolve.c (check_charlen_present): Likewise.
- (gfc_resolve_reshape): Likewise.
- (gfc_resolve_transfer): Likewise.
- * module.c (mio_constructor): Likewise.
- * primary.c (build_actual_constructor): Likewise.
- (gfc_match_structure_constructor): Likewise.
- * resolve.c (resolve_structure_cons): Likewise.
- * simplify.c (is_constant_array_expr): Likewise.
- (init_result_expr): Likewise.
- (transformational_result): Likewise.
- (simplify_transformation_to_scalar): Likewise.
- (simplify_transformation_to_array): Likewise.
- (gfc_simplify_dot_product): Likewise.
- (simplify_bound): Likewise.
- (simplify_matmul): Likewise.
- (simplify_minval_maxval): Likewise.
- (gfc_simplify_pack): Likewise.
- (gfc_simplify_reshape): Likewise.
- (gfc_simplify_shape): Likewise.
- (gfc_simplify_spread): Likewise.
- (gfc_simplify_transpose): Likewise.
- (gfc_simplify_unpack): Likewise.q
- (gfc_convert_constant): Likewise.
- (gfc_convert_char_constant): Likewise.
- * target-memory.c (size_array): Likewise.
- (encode_array): Likewise.
- (encode_derived): Likewise.
- (interpret_array): Likewise.
- (gfc_interpret_derived): Likewise.
- (expr_to_char): Likewise.
- (gfc_merge_initializers): Likewise.
- * trans-array.c (gfc_get_array_constructor_size): Likewise.
- (gfc_trans_array_constructor_value): Likewise.
- (get_array_ctor_strlen): Likewise.
- (gfc_constant_array_constructor_p): Likewise.
- (gfc_build_constant_array_constructor): Likewise.
- (gfc_trans_array_constructor): Likewise.
- (gfc_conv_array_initializer): Likewise.
- * trans-decl.c (check_constant_initializer): Likewise.
- * trans-expr.c (flatten_array_ctors_without_strlen): Likewise.
- (gfc_apply_interface_mapping_to_cons): Likewise.
- (gfc_trans_structure_assign): Likewise.
- (gfc_conv_structure): Likewise.
- * array.c (check_duplicate_iterator): Likewise.
- (match_array_list): Likewise.
- (match_array_cons_element): Likewise.
- (gfc_match_array_constructor): Likewise.
- (check_constructor_type): Likewise.
- (check_constructor): Likewise.
- (expand): Likewise.
- (expand_constructor): Likewise.
- (extract_element): Likewise.
- (gfc_expanded_ac): Likewise.
- (resolve_array_list): Likewise.
- (gfc_resolve_character_array_constructor): Likewise.
- (copy_iterator): Renamed to ...
- (gfc_copy_iterator): ... this.
- (gfc_append_constructor): Removed.
- (gfc_insert_constructor): Removed unused function.
- (gfc_get_constructor): Removed.
- (gfc_free_constructor): Removed.
- (qgfc_copy_constructor): Removed.
- * gfortran.h (struct gfc_expr): Removed member 'con_by_offset'.
- Removed all references. Replaced constructor list by splay-tree.
- (struct gfc_constructor): Removed member 'next', moved 'offset' from
- the inner struct, added member 'base'.
- (gfc_append_constructor): Removed prototype.
- (gfc_insert_constructor): Removed prototype.
- (gfc_get_constructor): Removed prototype.
- (gfc_free_constructor): Removed prototype.
- (qgfc_copy_constructor): Removed prototype.
- (gfc_copy_iterator): New prototype.
- * trans-array.h (gfc_constant_array_constructor_p): Adjusted prototype.
-
-2010-04-10 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/43591
- * expr.c (gfc_is_constant_expr, gfc_traverse_expr): Handle
- proc-pointers and type-bound procedures.
- (gfc_specification_expr): Check proc-pointers for pureness.
-
-2010-04-09 Iain Sandoe <iains@gcc.gnu.org>
-
- PR bootstrap/43684
- * gfortranspec.c (lang_specific_driver): Do not expose vars
- only used by HAVE_LD_STATIC_DYNAMIC targets unless compiling
- for such.
-
-2010-04-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/18918
- * decl.c (variable_decl, match_attr_spec): Fix setting the array
- spec.
- * array.c (match_subscript,gfc_match_array_ref): Add coarray support.
- * data.c (gfc_assign_data_value): Ditto.
- * expr.c (gfc_check_pointer_assign): Add check for coarray constraint.
- (gfc_traverse_expr): Traverse also through codimension expressions.
- (gfc_is_coindexed, gfc_has_ultimate_allocatable,
- gfc_has_ultimate_pointer): New functions.
- * gfortran.h (gfc_array_ref_dimen_type): Add DIMEN_STAR for coarrays.
- (gfc_array_ref): Add codimen.
- (gfc_array_ref): Add in_allocate.
- (gfc_is_coindexed, gfc_has_ultimate_allocatable,
- gfc_has_ultimate_pointer): Add prototypes.
- * interface.c (compare_parameter, compare_actual_formal,
- check_intents): Add coarray constraints.
- * match.c (gfc_match_iterator): Add coarray constraint.
- * match.h (gfc_match_array_ref): Update interface.
- * primary.c (gfc_match_varspec): Handle codimensions.
- * resolve.c (coarray_alloc, inquiry_argument): New static variables.
- (check_class_members): Return gfc_try instead for error recovery.
- (resolve_typebound_function,resolve_typebound_subroutine,
- check_members): Handle return value of check_class_members.
- (resolve_structure_cons, resolve_actual_arglist, resolve_function,
- check_dimension, compare_spec_to_ref, resolve_array_ref,
- resolve_ref, resolve_variable, gfc_resolve_expr, conformable_arrays,
- resolve_allocate_expr, resolve_ordinary_assign): Add coarray
- support.
- * trans-array.c (gfc_conv_array_ref, gfc_walk_variable_expr):
- Skip over coarray refs.
- (gfc_array_allocate) Add support for references containing coindexes.
- * trans-expr.c (gfc_add_interface_mapping): Copy coarray attribute.
- (gfc_map_intrinsic_function): Ignore codimensions.
-
-2010-04-08 Bud Davis <bdavis9659@sbcglobal.net>
-
- PR fortran/28039
- * io.c (check_format_string): Added check for additional non
- blank characters after the format string was successfully
- parsed.
- * io.c (check_format): Changed the error messages for positive
- int required and period required to drop through the error logic
- and report with gfc_error instead of gfc_error_now. Corrected
- format postion for hollerith strings.
-
-2010-04-08 Tobias Burnus <burnus@net-b.de>
-
- * module.c (use_iso_fortran_env_module): Fix standard check.
-
-2010-04-07 Jakub Jelinek <jakub@redhat.com>
-
- * parse.c (parse_derived, parse_enum): Avoid set but not used
- warning.
-
2010-04-07 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/40539
* gfortran.texi: Add section about representation of
- LOGICAL variables.
+ LOGICAL variables.
2010-04-07 Simon Baldwin <simonb@google.com>