summaryrefslogtreecommitdiff
path: root/gcc/fortran/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
* PR fortran/24549fxcoudert2006-05-101-0/+5
| | | | | | | | * parse.c (reject_statement): Clear gfc_new_block. * gfortran.dg/error_recovery_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113671 138bc75d-0d04-0410-961f-82ee72b054a4
* Commit chnages missed in the previous commit.kargl2006-05-091-0/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113658 138bc75d-0d04-0410-961f-82ee72b054a4
* * ChangeLog: haste made me write my name, but I'm only thefxcoudert2006-05-071-1/+1
| | | | | | | commiter of revision 113603. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113604 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/27378fxcoudert2006-05-071-0/+6
| | | | | | | | * parse.c (next_statement): Add check to avoid an ICE when gfc_current_locus.lb is not set. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113603 138bc75d-0d04-0410-961f-82ee72b054a4
* fortran/tobi2006-05-071-0/+6
| | | | | | | | | | | | PR fortran/27457 * match.c (match_case_eos): Error out on garbage following CASE(...). testsuite/ PR fortran/27457 * gfortran.dg/select_6.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113602 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-05-07 Paul Thomas <pault@gcc.gnu.org>pault2006-05-071-0/+8
| | | | | | | | | | | | | | | | | | PR fortran/24813 * trans-array.c (get_array_ctor_strlen): Remove static attribute. * trans.h: Add prototype for get_array_ctor_strlen. * trans-intrinsic.c (gfc_conv_intrinsic_len): Switch on EXPR_ARRAY and call get_array_ctor_strlen. 2006-05-07 Paul Thomas <pault@gcc.gnu.org> PR fortran/24813 * gfortran.dg/char_cons_len_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113594 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-05-05 Steven G. Kargl <kargls@comcast.net>kargl2006-05-051-0/+7
| | | | | | | | | | | * invoke.texi: Update description of -fall-intrinsics * options.c (gfc_post_options): Disable -Wnonstd-intrinsics if -fall-intrinsics is used. (gfc_handle_option): Permit -Wno-nonstd-intrinsics. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113562 138bc75d-0d04-0410-961f-82ee72b054a4
* * simplify.c (ascii_table): Fix wrong entry.tobi2006-05-041-0/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113523 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-30 Steven G. Kargl <kargls@comcast.net>kargl2006-05-031-0/+13
| | | | | | | | | | | | | | | | | | | | | | PR fortran/26896 * lang.opt: Fix -Wtab description PR fortran/20248 * lang.opt: New flag -fall-intrinsics. * invoke.texi: Document option. * gfortran.h (options_t): New member flag_all_intrinsics. * options.c (gfc_init_options, gfc_handle_option): Set new option. sort nearby misplaced options. * intrinsic.c (add_sym, make_generic, make_alias): Use it. 2006-03-30 Steven G. Kargl <kargls@comcast.net> * gfortran.dg/iargc.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113502 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-05-02 Paul Thomas <pault@gcc.gnu.org>sayle2006-05-021-0/+12
| | | | | | | | | | | | | | | | | | | | PR fortran/27269 * module.c: Add static flag in_load_equiv. (mio_expr_ref): Return if no symtree and in_load_equiv. (load_equiv): If any of the equivalence members have no symtree, free the equivalence and the associated expressions. PR fortran/27324 * trans-common.c (gfc_trans_common): Invert the order of calls to finish equivalences and gfc_commit_symbols. PR fortran/27269 PR fortran/27324 * gfortran.dg/module_equivalence_2.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113465 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/25681fxcoudert2006-04-291-0/+6
| | | | | | | | | | * simplify.c (simplify_len): Character variables with constant length can be simplified. * gfortran.df/char_type_len.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113376 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-29 H.J. Lu <hongjiu.lu@intel.com>hjl2006-04-291-0/+6
| | | | | | | | | PR fortran/27351 * trans-array.c (gfc_conv_array_transpose): Move gcc_assert before gfc_conv_expr_descriptor. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113375 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-23 Paul Thomas <pault@gcc.gnu.org>pault2006-04-231-0/+6
| | | | | | | | | | | | | | | | PR fortran/25099 * resolve.c (resolve_call): Check conformity of elemental subroutine actual arguments. 2006-04-23 Paul Thomas <pault@gcc.gnu.org> PR fortran/25099 * gfortran.dg/elemental_subroutine_4.f90: New test. * gfortran.dg/assumed_size_refs_1.f90: Add error to non-conforming call sub (m, x). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113194 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/26769jakub2006-04-221-0/+6
| | | | | | | | | | | | | | * iresolve.c (gfc_resolve_reshape): Use reshape_r16 for real(16). (gfc_resolve_transpose): Use transpose_r16 for real(16). * Makefile.am (i_transpose_c): Add generated/transpose_r16.c. (i_reshape_c): Add generated/reshape_r16.c. * Makefile.in: Regenerated. * generated/transpose_r16.c: Generated new file. * generated/redhape_r16.c: Generated new file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113169 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-21 Paul Thomas <pault@gcc.gnu.org>pault2006-04-211-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/27122 * resolve.c (resolve_function): Remove general restriction on auto character length function interfaces. (gfc_resolve_uops): Check restrictions on defined operator procedures. (resolve_types): Call the check for defined operators. PR fortran/27113 * trans-array.c (gfc_trans_array_constructor_subarray): Remove redundant gfc_todo_error. (get_array_ctor_var_strlen): Remove typo in enum. 2006-04-21 Paul Thomas <pault@gcc.gnu.org> PR fortran/27122 * gfortran.dg/defined_operators_1.f90: New test. * gfortran.dg/assumed_charlen_function_1.f90: Add new error and remove old ones associated, incorrectly, with Note 5.46. PR fortran/27113 * gfortran.dg/character_array_constructor_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113133 138bc75d-0d04-0410-961f-82ee72b054a4
* fortran/aldot2006-04-181-0/+7
| | | | | | | | | | | | | | | * parse.c (next_free): Use consistent error string between free-form and fixed-form for illegal statement label of zero. (next_fixed): Use consistent warning string between free-form and fixed-form for statement labels for empty statements. testsuite/ * gfortran.dg/label_1.f90: Adjust dg-error. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113053 138bc75d-0d04-0410-961f-82ee72b054a4
* * trans-io.c (gfc_build_io_library_fndecls): Align pad.sje2006-04-181-0/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113047 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-16 Thomas Koenig <Thomas.Koenig@online.de>tkoenig2006-04-161-0/+9
| | | | | | | | | | | | | | | | | PR fortran/26017 * trans-array.c(gfc_array_init_size): Introduce or_expr which is true if the size along any dimension is negative. Create a temporary variable with base name size. If or_expr is true, set the temporary to 0, to the normal size otherwise. 2006-04-16 Thomas Koenig <Thomas.Koenig@online.de> * gfortran.dg/allocate_zerosize_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112988 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-16 Paul Thomas <pault@gcc.gnu.org>pault2006-04-161-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/26822 * intrinsic.c (add_functions): Mark LOGICAL as elemental. PR fortran/26787 * expr.c (gfc_check_assign): Extend scope of error to include assignments to a procedure in the main program or, from a module or internal procedure that is not that represented by the lhs symbol. Use VARIABLE rather than l-value in message. PR fortran/27096 * trans-array.c (gfc_trans_deferred_array): If the backend_decl is not a descriptor, dereference and then test and use the type. PR fortran/25597 * trans-decl.c (gfc_trans_deferred_vars): Check if an array result, is also automatic character length. If so, process the character length. PR fortran/18803 PR fortran/25669 PR fortran/26834 * trans_intrinsic.c (gfc_walk_intrinsic_bound): Set data.info.dimen for bound intrinsics. * trans_array.c (gfc_conv_ss_startstride): Pick out LBOUND and UBOUND intrinsics and supply their shape information to the ss and the loop. PR fortran/27124 * trans_expr.c (gfc_trans_function_call): Add a new block, post, in to which all the argument post blocks are put. Add this block to se->pre after a byref call or to se->post, otherwise. 2006-04-16 Paul Thomas <pault@gcc.gnu.org> PR fortran/26787 * gfortran.dg/proc_assign_1.f90: New test. * gfortran.dg/procedure_lvalue.f90: Change message. * gfortran.dg/namelist_4.f90: Add new error. PR fortran/27096 * gfortran.dg/auto_pointer_array_result_1.f90 PR fortran/27089 * gfortran.dg/specification_type_resolution_1.f90 PR fortran/18803 PR fortran/25669 PR fortran/26834 * gfortran.dg/bounds_temporaries_1.f90: New test. PR fortran/27124 * gfortran.dg/array_return_value_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112981 138bc75d-0d04-0410-961f-82ee72b054a4
* * trans-io.c (set_string): Use fold_build2 and build_int_cst insteadsayle2006-04-151-0/+5
| | | | | | | | of build2 and convert to construct "x < 0" rather than "x <= -1". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112968 138bc75d-0d04-0410-961f-82ee72b054a4
* PR 26651rth2006-04-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gimple-low.c (lower_omp_directive): Remove dead code. (lower_stmt): Do nothing except for openmp, except for OMP_PARALLEL. * gimplify.c (gimplify_expr): Update for OMP_RETURN, OMP_CONTINUE. * omp-low.c (struct omp_region): Move to tree-flow.h. (root_omp_region): Export. (omp_regions, lookup_omp_region): Remove. (determine_parallel_type): Update for struct omp_region changes. (dump_omp_region): Dump regions with block numbers. (new_omp_region): Take type and block instead of stmt; malloc instead of ggc. (free_omp_region_1, free_omp_regions): New. (expand_parallel_call): Take entry_stmt as argument; update for changes to omp_region. (remove_exit_barrier): Rewrite to update OMP_RETURN_NOWAIT. (remove_exit_barriers): New. (expand_omp_parallel): Update for struct omp_region changes. (expand_omp_synch): Likewise. (expand_omp): Likewise. (expand_omp_for_static_nochunk): Likewise; update for OMP_CONTINUE. (expand_omp_for_static_chunk): Likewise. (expand_omp_for): Likewise. (expand_omp_for_generic): Likewise; emit the proper GOMP_loop_end call. (expand_omp_sections): Similarly, with GOMP_sections_end. (expand_omp_single): New. (build_omp_regions_1): Update for OMP_CONTINUE. (execute_expand_omp): Call remove_exit_barriers, free_omp_regions. (lower_omp_sections): Expand with OMP_CONTINUE, do not collect OMP_SECTIONS_SECTIONS. (lower_omp_single_simple): Don't emit barrier here. (lower_omp_single_copy): Likewise. (lower_omp_single): Fix bindings, and lower to straightline now. (lower_omp_master, lower_omp_ordered): Likewise. (lower_omp_critical): Likewise. (lower_omp_for): Likewise. Emit OMP_CONTINUE. * tree-cfg.c (make_edges): Collect an omp_region tree, use it for omp edges, free it afterward. (make_omp_sections_edges): Remove. (is_ctrl_altering_stmt): Don't bother checking flag_openmp. (move_stmt_r): Handle OMP_CONTINUE. * tree-flow.h (struct omp_region): Move from omp-low.c. Switch statement pointers to basic blocks. Add type member. (root_omp_region, new_omp_region, free_omp_regions): Declare. * tree-gimple.c (is_gimple_stmt): Handle OMP_RETURN, OMP_CONTINUE. * tree-inline.c (estimate_num_insns_1): Likewise. * tree-pretty-print.c (dump_generic_node): Likewise. * tree-ssa-operands.c (get_expr_operands): Likewise. * tree.def (OMP_SECTIONS): Remove OMP_SECTIONS_SECTIONS operand. (OMP_RETURN): Rename from OMP_RETURN_EXPR. (OMP_CONTINUE): New. * tree.h (OMP_DIRECTIVE_P): Add OMP_CONTINUE. (OMP_SECTIONS_SECTIONS): Remove. (OMP_SECTION_LAST): New. (OMP_RETURN_NOWAIT): New. fortran/ * trans-openmp.c (gfc_trans_omp_sections): Adjust for changed number of operands to OMP_SECTIONS. testsuite/ * g++.dg/gomp/block-0.C: Update expected matches. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112935 138bc75d-0d04-0410-961f-82ee72b054a4
* * gfortran.texi: Fix typos. Follow spelling conventions.kazu2006-04-081-0/+6
| | | | | | | | * resolve.c, trans-expr.c, trans-stmt.c: Fix comment typos. Follow spelling conventions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112780 138bc75d-0d04-0410-961f-82ee72b054a4
* * dependency.c (get_no_elements): Delete function.sayle2006-04-061-5/+12
| | | | | | | | | | | | (get_deps): Delete function. (transform_sections): Delete function. (gfc_check_section_vs_section): Significant rewrite. * gfortran.dg/dependency_18.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112731 138bc75d-0d04-0410-961f-82ee72b054a4
* Correct PR number in ChangeLogs.hjl2006-04-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | gcc/fortran/ 2006-04-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/26891 * trans.h : Prototype for gfc_conv_missing_dummy. * trans-expr (gfc_conv_missing_dummy): New function (gfc_conv_function_call): Call it and tidy up some of the code. * trans-intrinsic (gfc_conv_intrinsic_function_args): The same. gcc/testsuite/ 2006-04-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/26891 * gfortran.dg/missing_optional_dummy_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112701 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/fortran/hjl2006-04-051-0/+10
| | | | | | | | | | | | | | | | | | | | | | | 2006-04-04 H.J. Lu <hongjiu.lu@intel.com> PR fortran/25619 * trans-array.c (gfc_conv_expr_descriptor): Only dereference character pointer when copying temporary. PR fortran/23634 * trans-array.c (gfc_conv_expr_descriptor): Properly copy temporary character with non constant size. gcc/testsuite/ 2006-04-04 Paul Thomas <pault@gcc.gnu.org> PR fortran/23634 PR fortran/25619 * gfortran.dg/actual_array_constructor_1.f90: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112695 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-03 Paul Thomas <pault@gcc.gnu.org>pault2006-04-031-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/26981 * trans.h : Prototype for gfc_conv_missing_dummy. * trans-expr (gfc_conv_missing_dummy): New function (gfc_conv_function_call): Call it and tidy up some of the code. * trans-intrinsic (gfc_conv_intrinsic_function_args): The same. PR fortran/26976 * array.c (gfc_array_dimen_size): If available, return shape[dimen]. * resolve.c (resolve_function): If available, use the argument shape for the function expression. * iresolve.c (gfc_resolve_transfer): Set shape[0] = size. 2006-04-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/26981 * gfortran.dg/missing_optional_dummy_1.f90: New test. PR fortran/26976 * gfortran.dg/compliant_elemental_intrinsics_1.f90: New test. * gfortran.dg/initialization_1.f90: Make assignment compliant. * gfortran.dg/transfer_array_intrinsic_1.f90: Simplify. * gfortran.dg/transfer_array_intrinsic_2.f90: Make assignments compliant and detect bigendian-ness. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112634 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-04-02 Erik Edelmann <eedelman@gcc.gnu.org>eedelman2006-04-021-0/+13
| | | | | | | | | | | | | | | | | | | | | | | * trans-array.c (gfc_trans_dealloc_allocated): Take a tree representation of the array to be deallocated as argument instead of its gfc_symbol. (gfc_trans_deferred_array): Update call to gfc_trans_dealloc_allocated. * trans-array.h (gfc_trans_dealloc_allocated): Update prototype. * trans-expr.c (gfc_conv_function_call): Update call to gfc_trans_dealloc_allocated, get indirect reference to dummy arguments. 2006-04-02 Erik Edelmann <eedelman@gcc.gnu.org> * gfortran.dg/allocatable_dummy_1.f90: Also check that allocatable dummy arguments work when the actual argument is itself a dummy argument of the caller. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112625 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/25270sayle2006-04-011-0/+10
| | | | | | | | | | | | | * trans-array.c (gfc_trans_allocate_array_storage): In array index calculations use gfc_index_zero_node and gfc_index_one_node instead of integer_zero_node and integer_one_node respectively. (gfc_conv_array_transpose): Likewise. (gfc_conv_ss_startstride): Likewise. (gfc_trans_dummy_array_bias): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112608 138bc75d-0d04-0410-961f-82ee72b054a4
* * dependency.c (gfc_is_inside_range): Delete.sayle2006-04-011-0/+5
| | | | | | | | | | (gfc_check_element_vs_section): Significant rewrite. * gfortran.dg/dependencency_17.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112607 138bc75d-0d04-0410-961f-82ee72b054a4
* * dependency.c (gfc_dep_compare_expr): Strip parentheses and unarysayle2006-04-011-0/+11
| | | | | | | | | | | | | | | | | | plus operators when comparing expressions. Handle comparisons of the form "X+C vs. X", "X vs. X+C", "X-C vs. X" and "X vs. X-C" where C is an integer constant. Handle comparisons of the form "P+Q vs. R+S" and "P-Q vs. R-S". Handle comparisons of integral extensions specially (increasing functions) so extend(A) > extend(B), when A>B. (gfc_check_element_vs_element): Move test later, so that we ignore the fact that "A < B" or "A > B" when A or B contains a forall index. * gfortran.dg/dependency_14.f90: New test case. * gfortran.dg/dependency_15.f90: Likewise. * gfortran.dg/dependency_16.f90: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112605 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-31 Asher Langton <langton2@llnl.gov>kargl2006-04-011-0/+5
| | | | | | | | | | | | | | | PR fortran/25358 *expr.c (gfc_check_assign): Allow cray pointee to be assumes-size. 2006-03-31 Asher Langton <langton2@llnl.gov> PR fortran/25358 gfortran.dg/cray_pointers_6.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112594 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-30 Paul Thomas <paulthomas2@wanadoo.fr>bdavis2006-03-311-0/+6
| | | | | | | | | | | | Bud Davis <bdavis9659@sbcglobal.net> PR 21130 * module.c (load_needed): Traverse entire tree before returning. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112558 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/22375sayle2006-03-301-0/+7
| | | | | | | | | | * trans.c (gfc_trans_runtime_check): Promote the arguments of __builtin_expect to the correct types, and the result back to boolean_type_node. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112547 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/carlos2006-03-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-03-30 Carlos O'Donell <carlos@codesourcery.com> * Makefile.in: Rename docdir to gcc_docdir. gcc/java/ 2006-03-30 Carlos O'Donell <carlos@codesourcery.com> * Make-lang.in: Rename docdir to gcc_docdir. gcc/ada/ 2006-03-29 Carlos O'Donell <carlos@codesourcery.com> * Make-lang.in: Rename docdir to gcc_docdir. gcc/fortran/ 2006-03-29 Carlos O'Donell <carlos@codesourcery.com> * Make-lang.in: Rename docdir to gcc_docdir. gcc/treelang/ 2006-03-29 Carlos O'Donell <caros@codesourcery.com> * Make-lang.in: Rename docdir to gcc_docdir. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112545 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-28 Steven G. Kargl <kargls@comcast.net>kargl2006-03-281-0/+4
| | | | | | | | * intrinsic.texi: s/floor/float in previous commit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112474 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-28 Paul Thomas <pault@gcc.gnu.org>pault2006-03-281-0/+6
| | | | | | | | | | | | | | | PR fortran/26779 *resolve.c (resolve_fl_procedure): Do not check the access of derived types for internal procedures. 2006-03-28 Paul Thomas <pault@gcc.gnu.org> PR fortran/26779 * gfortran.dg/private_type_5.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112442 138bc75d-0d04-0410-961f-82ee72b054a4
* * io.c (check_io_constraints): Don't look atjakub2006-03-271-0/+4
| | | | | | | | | | | dt->advance->value.charater.string, unless it is a CHARACTER constant. * gfortran.dg/advance_2.f90: New test. * gfortran.dg/advance_3.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112417 138bc75d-0d04-0410-961f-82ee72b054a4
* * f95-lang.c (gfc_get_alias_set): New function.jakub2006-03-271-0/+5
| | | | | | | | | (LANG_HOOKS_GET_ALIAS_SET): Define. * gfortran.fortran-torture/execute/equiv_5.f: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112416 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/26816kargl2006-03-261-0/+6
| | | | | | | | | | | * intrinsic.c (add_functions): Allow FLOAT to accept all integer kinds. * intrinsic.texi: Document FLOAT. * gfortran.dg/float_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112392 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>tkoenig2006-03-251-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/26769 * iresolve.c (gfc_resolve_reshape): Remove doubling of kind for complex. For real(kind=10), call reshape_r10. (gfc_resolve_transpose): For real(kind=10), call transpose_r10. 2006-03-25 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/26769 * Makefile.am: Add transpose_r10.c and reshape_r10.c. * aclocal.m4: Regenerate using aclocal 1.9.3. * Makefile.in: Regenerate using automake 1.9.3. * m4/iparm.m4 (rtype_ccode): If rtype_letter is `i', evaluate to rtype_kind, otherwise to rtype_code. * generated/transpose_r10.c: Add. * generated/reshape_r10.c: Add. 2006-03-25 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/26769 * gfortran.dg/transpose_reshape_r10.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112381 138bc75d-0d04-0410-961f-82ee72b054a4
* * dependency.c (gfc_check_dependency): Improve handling of pointers;sayle2006-03-251-0/+6
| | | | | | | | | | | Two variables of different types can't have a dependency, and two variables with the same symbol are equal, even if pointers. * gfortran.dg/dependency_12.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112377 138bc75d-0d04-0410-961f-82ee72b054a4
* * gfortran.h (gfc_symbol): Add a new "forall_index" bit field.sayle2006-03-251-0/+11
| | | | | | | | | | | | | | | | * match.c (match_forall_iterator): Set forall_index field on the iteration variable's symbol. * dependency.c (contains_forall_index_p): New function to traverse a gfc_expr to check whether it contains a variable with forall_index set in it's symbol. (gfc_check_element_vs_element): Return GFC_DEP_EQUAL for scalar constant expressions that don't variables used as FORALL indices. * gfortran.dg/dependency_9.f90: New (resurected) test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112373 138bc75d-0d04-0410-961f-82ee72b054a4
* PR driver/22600 reichelt2006-03-221-0/+5
| | | | | | | | | | | | | | | * system.h (ICE_EXIT_CODE): New macro. * diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE. (diagnostic_action_after_output): Likewise. * gcc.c (fatal_ice): New function. (execute): Use it instead of fatal. (fancy_abort): Likewise. * doc/invoke.texi (-pass-exit-codes): Document return code for ICEs. * fortran/error.c (gfc_fatal_error): Return ICE_EXIT_CODE instead of 4. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112292 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-22 Thomas Koenig <Thomas.Koenig@onlien.de>tkoenig2006-03-221-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/19303 * gfortran.h (gfc_option_t): Add record_marker. * lang.opt: Add -frecord-marker=4 and -frecord-marker=8. * trans-decl.c: Add gfor_fndecl_set_record_marker. (gfc_build_builtin_function_decls): Set gfor_fndecl_set_record_marker. (gfc_generate_function_code): If we are in the main program and -frecord-marker was provided, call set_record_marker. * options.c (gfc_handle_option): Add handling for -frecord-marker=4 and -frecord-marker=8. * invoke.texi: Document -frecord-marker. 2006-03-22 Thomas Koenig <Thomas.Koenig@onlien.de> PR fortran/19303 * libgfortran.h (compile_options_t): Add record_marker. * runtime/compile_options.c (set_record_marker): New function. * io/open.c: If we have four-byte record markers, use GFC_INTEGER_4_HUGE as default record length. * io/file_pos.c (unformatted_backspace): Handle different size record markers. * io/transfer.c (us_read): Likewise. (us_write): Likewise. (next_record_r): Likewise. (write_us_marker): Likewise. (next_record_w): Likewise. 2006-03-22 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/19303 * gfortran.dg/record_marker_1.f90: New test case. * gfortran.dg/record_marker_2.f: New test case. * gfortran.dg/record_marker_3.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112290 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-22 Paul Thomas <pault@gcc.gnu.org>pault2006-03-221-0/+10
| | | | | | | | | | | | | | | | | | | | PR fortran/17298 *trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): New function to implement array valued TRANSFER intrinsic. (gfc_conv_intrinsic_function): Call the new function if TRANSFER and non-null se->ss. (gfc_walk_intrinsic_function): Treat TRANSFER as one of the special cases by calling gfc_walk_intrinsic_libfunc directly. 2006-03-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/17298 * gfortran.dg/transfer_array_intrinsic_1.f90: New test. * gfortran.dg/transfer_array_intrinsic_2.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112278 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-21 Toon Moene <toon@moene.indiv.nluug.nl>toon2006-03-211-0/+5
| | | | | | | | | | | | | | | * fortran/options.c (gfc_init_options): Initialize flag_argument_noalias to 3. * doc/invoke.texi: Document new flag -fargument-noalias-anything. * tree-ssa-alias.c (may_alias_p): If flag_argument_noalias > 2, argument pointers may not alias any other storage. * common.opt: Define option -fargument-noalias-anything. * tree-ssa-structalias.c (intra_create_variable_infos): Fortran alias semantics is specified by flag_argument_noalias > 2. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112243 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-20 Thomas Koenig <Thomas.Koenig@online.de>tkoenig2006-03-201-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR fortran/20935 * iresolve.c (gfc_resolve_maxloc): If mask is scalar, prefix the function name with an "s". If the mask is scalar or if its kind is smaller than gfc_default_logical_kind, coerce it to default kind. (gfc_resolve_maxval): Likewise. (gfc_resolve_minloc): Likewise. (gfc_resolve_minval): Likewise. (gfc_resolve_product): Likewise. (gfc_resolve_sum): Likewise. 2006-03-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20935 * m4/iforeach.m4: Add SCALAR_FOREACH_FUNCTION macro. * m4/ifunction.m4: Add SCALAR_ARRAY_FUNCTION macro. * m4/minloc0.m4: Use SCALAR_FOREACH_FUNCTION. * m4/minloc1.m4: Use SCALAR_ARRAY_FUNCTION. * m4/maxloc0.m4: Use SCALAR_FOREACH_FUNCTION. * m4/maxloc1.m4: Use SCALAR_ARRAY_FUNCTION. * m4/minval.m4: Likewise. * m4/maxval.m4: Likewise. * m4/product.m4: Likewise. * m4/sum.m4: Likewise. * minloc0_16_i16.c : Regenerated. * minloc0_16_i4.c : Regenerated. * minloc0_16_i8.c : Regenerated. * minloc0_16_r10.c : Regenerated. * minloc0_16_r16.c : Regenerated. * minloc0_16_r4.c : Regenerated. * minloc0_16_r8.c : Regenerated. * minloc0_4_i16.c : Regenerated. * minloc0_4_i4.c : Regenerated. * minloc0_4_i8.c : Regenerated. * minloc0_4_r10.c : Regenerated. * minloc0_4_r16.c : Regenerated. * minloc0_4_r4.c : Regenerated. * minloc0_4_r8.c : Regenerated. * minloc0_8_i16.c : Regenerated. * minloc0_8_i4.c : Regenerated. * minloc0_8_i8.c : Regenerated. * minloc0_8_r10.c : Regenerated. * minloc0_8_r16.c : Regenerated. * minloc0_8_r4.c : Regenerated. * minloc0_8_r8.c : Regenerated. * minloc1_16_i16.c : Regenerated. * minloc1_16_i4.c : Regenerated. * minloc1_16_i8.c : Regenerated. * minloc1_16_r10.c : Regenerated. * minloc1_16_r16.c : Regenerated. * minloc1_16_r4.c : Regenerated. * minloc1_16_r8.c : Regenerated. * minloc1_4_i16.c : Regenerated. * minloc1_4_i4.c : Regenerated. * minloc1_4_i8.c : Regenerated. * minloc1_4_r10.c : Regenerated. * minloc1_4_r16.c : Regenerated. * minloc1_4_r4.c : Regenerated. * minloc1_4_r8.c : Regenerated. * minloc1_8_i16.c : Regenerated. * minloc1_8_i4.c : Regenerated. * minloc1_8_i8.c : Regenerated. * minloc1_8_r10.c : Regenerated. * minloc1_8_r16.c : Regenerated. * minloc1_8_r4.c : Regenerated. * minloc1_8_r8.c : Regenerated. * maxloc0_16_i16.c : Regenerated. * maxloc0_16_i4.c : Regenerated. * maxloc0_16_i8.c : Regenerated. * maxloc0_16_r10.c : Regenerated. * maxloc0_16_r16.c : Regenerated. * maxloc0_16_r4.c : Regenerated. * maxloc0_16_r8.c : Regenerated. * maxloc0_4_i16.c : Regenerated. * maxloc0_4_i4.c : Regenerated. * maxloc0_4_i8.c : Regenerated. * maxloc0_4_r10.c : Regenerated. * maxloc0_4_r16.c : Regenerated. * maxloc0_4_r4.c : Regenerated. * maxloc0_4_r8.c : Regenerated. * maxloc0_8_i16.c : Regenerated. * maxloc0_8_i4.c : Regenerated. * maxloc0_8_i8.c : Regenerated. * maxloc0_8_r10.c : Regenerated. * maxloc0_8_r16.c : Regenerated. * maxloc0_8_r4.c : Regenerated. * maxloc0_8_r8.c : Regenerated. * maxloc1_16_i16.c : Regenerated. * maxloc1_16_i4.c : Regenerated. * maxloc1_16_i8.c : Regenerated. * maxloc1_16_r10.c : Regenerated. * maxloc1_16_r16.c : Regenerated. * maxloc1_16_r4.c : Regenerated. * maxloc1_16_r8.c : Regenerated. * maxloc1_4_i16.c : Regenerated. * maxloc1_4_i4.c : Regenerated. * maxloc1_4_i8.c : Regenerated. * maxloc1_4_r10.c : Regenerated. * maxloc1_4_r16.c : Regenerated. * maxloc1_4_r4.c : Regenerated. * maxloc1_4_r8.c : Regenerated. * maxloc1_8_i16.c : Regenerated. * maxloc1_8_i4.c : Regenerated. * maxloc1_8_i8.c : Regenerated. * maxloc1_8_r10.c : Regenerated. * maxloc1_8_r16.c : Regenerated. * maxloc1_8_r4.c : Regenerated. * maxloc1_8_r8.c : Regenerated. * maxval_i16.c : Regenerated. * maxval_i4.c : Regenerated. * maxval_i8.c : Regenerated. * maxval_r10.c : Regenerated. * maxval_r16.c : Regenerated. * maxval_r4.c : Regenerated. * maxval_r8.c : Regenerated. * minval_i16.c : Regenerated. * minval_i4.c : Regenerated. * minval_i8.c : Regenerated. * minval_r10.c : Regenerated. * minval_r16.c : Regenerated. * minval_r4.c : Regenerated. * minval_r8.c : Regenerated. * sum_c10.c : Regenerated. * sum_c16.c : Regenerated. * sum_c4.c : Regenerated. * sum_c8.c : Regenerated. * sum_i16.c : Regenerated. * sum_i4.c : Regenerated. * sum_i8.c : Regenerated. * sum_r10.c : Regenerated. * sum_r16.c : Regenerated. * sum_r4.c : Regenerated. * sum_r8.c : Regenerated. * product_c10.c : Regenerated. * product_c16.c : Regenerated. * product_c4.c : Regenerated. * product_c8.c : Regenerated. * product_i16.c : Regenerated. * product_i4.c : Regenerated. * product_i8.c : Regenerated. * product_r10.c : Regenerated. * product_r16.c : Regenerated. * product_r4.c : Regenerated. * product_r8.c : Regenerated. 2006-03-20 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20935 * gfortran.dg/scalar_mask_2.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112230 138bc75d-0d04-0410-961f-82ee72b054a4
* Correct error in PR numberpault2006-03-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112212 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-19 Paul Thomas <pault@gcc.gnu.org>pault2006-03-191-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | PR fortran/26716 *expr.c (external_spec_function): Permit elemental functions. PR fortran/26716 *interface.c (compare_actual_formal): Detect call for procedure usage and require rank checking, in this case, for assumed shape and deferred shape arrays. (gfc_procedure_use): Revert to pre-PR25070 call to compare_actual_formal that does not require rank checking.. 2006-03-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/26716 * gfortran.dg/elemental_initializer_1.f90: New test. PR fortran/26716 * gfortran.dg/assumed_shape_ranks_2: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112210 138bc75d-0d04-0410-961f-82ee72b054a4
* * gfortran.h (gfc_equiv_info): Add length field.sayle2006-03-171-0/+8
| | | | | | | | | | | | | * trans-common.c (copy_equiv_list_to_ns): Set the length field. * dependency.c (gfc_are_equivalenced_arrays): Use both the offset and length fields to determine whether the two equivalenced symbols overlap in memory. * gfortran.dg/dependency_13.f90: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112162 138bc75d-0d04-0410-961f-82ee72b054a4