* tree-ssa-structalias.c (create_variable_info_for): Also mark
first field in a struct.
(intra_create_variable_infos): Don't deal with flag_argument_noalias.
fortran/
* trans-expr.c (gfc_conv_substring): Don't evaluate casted decl early,
change order of length calculation to (end - start) + 1.
(gfc_get_interface_mapping_array): Adjust call to
gfc_get_nodesc_array_type.
* trans-array.c (gfc_trans_create_temp_array,
gfc_build_constant_array_constructor, gfc_conv_expr_descriptor): Ditto.
* trans-stmt.c (gfc_trans_pointer_assign_need_temp): Ditto.
* trans.c (gfc_add_modify): Assignment between base type and nontarget
type are equal enough.
(gfc_call_malloc): Use prvoid_type_node for return value of
__builtin_malloc.
(gfc_allocate_with_status): Ditto.
* trans-types.c (gfc_array_descriptor_base): Double size of this array.
(gfc_init_types): Build prvoid_type_node.
(gfc_build_array_type): New bool parameter "restricted".
(gfc_get_nodesc_array_type): Ditto, build restrict qualified pointers,
if it's true.
(gfc_get_array_descriptor_base): Ditto.
(gfc_get_array_type_bounds): Ditto.
(gfc_sym_type): Use symbol attributes to feed calls to above functions.
(gfc_get_derived_type): Ditto.
* trans.h (struct lang_type): Add nontarget_type member.
* trans-types.h (prvoid_type_node): Declare.
(gfc_get_array_type_bounds, gfc_get_nodesc_array_type): Declare new
parameter.
* trans-decl.c (gfc_finish_var_decl): Give scalars that can't be
aliased a type with a different alias set than the base type.
(gfc_build_dummy_array_decl): Adjust call to gfc_get_nodesc_array_type.
testsuite/
* gfortran.dg/vect/vect-gems.f90: New test.
* gcc.dg/tree-ssa/alias-1.c: Remove, it checks something broken.
From-SVN: r150934
* config/alpha/alpha.c (alpha_output_mi_thunk_osf): Allocate insn
locators before emit_insn is called. Remove assert that
cfun->is_thunk.
(alpha_end_function): Clear crtl->emit structure and free insn
locators if cfun->is_thunk is true.
From-SVN: r150883
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
type if available.
* configure.ac: Test for it.
* configure, config.in: Regenerate.
* doc/install.texi: Document --enable-gnu-unique-object.
From-SVN: r150882
2009-08-18 Janus Weil <janus@gcc.gnu.org>
Paul Thomas <pault@gcc.gnu.org>
PR fortran/40870
* trans-types.c (gfc_get_ppc_type): Include formal args in backend_decl
using the interface symbol. Character types are returned by reference.
(gfc_get_derived_type): Prevent infinite recursion loop
if a PPC has a derived-type formal arg.
2009-08-18 Janus Weil <janus@gcc.gnu.org>
Paul Thomas <pault@gcc.gnu.org>
PR fortran/40870
* gfortran.dg/proc_ptr_comp_13.f90: Extended.
Co-Authored-By: Paul Thomas <pault@gcc.gnu.org>
From-SVN: r150875
2009-08-18 Richard Guenther <rguenther@suse.de>
PR middle-end/41094
* builtins.c (fold_builtin_pow): Fold pow(pow(x,y),z) to
pow(x,y*z) only if x is nonnegative.
* gcc.dg/torture/pr41094.c: New testcase.
* gcc.dg/torture/builtin-power-1.c: Adjust.
* gcc.dg/builtins-10.c: Likewise.
From-SVN: r150874
* config/m32c/m32c.md (UNS_FSETB, UNS_FREIT): New.
* config/m32c/prologue.md (epilogue_freit): New.
(fset_b): New.
* config/m32c/m32c.c (m32c_function_needs_enter): Add prototype.
(bank_switch_p): Likewise.
(fast_interrupt_p): Likewise.
(interrupt_p): Likewise.
(m32c_conditional_register_usage): Round memregs size up.
(need_to_save): We only need to save $a0 when we use ENTER.
(interrupt_p): Check for fast_interrupt too.
(bank_switch_p): New.
(fast_interrupt_p): New.
(m32c_attribute_table): Add bank_switch and fast_interrupt.
(m32c_emit_prolog): Support bank switching and fast interrupts.
* doc/extend.texi (Function Attributes): Add bank_switch and
fast_interrupt.
From-SVN: r150862
2008-08-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/41062
* trans-decl.c (gfc_trans_use_stmts): Keep going through use
list if symbol is not use associated.
2008-08-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/41062
* gfortran.dg/use_only_4.f90: New test.
From-SVN: r150858
2009-08-17 Daniel Kraft <d@domob.eu>
PR fortran/37425
* resolve.c (get_checked_tb_operator_target): New routine to do checks
on type-bound operators in common between intrinsic and user operators.
(resolve_typebound_intrinsic_op): Call it.
(resolve_typebound_user_op): Ditto.
2009-08-17 Daniel Kraft <d@domob.eu>
PR fortran/37425
* gfortran.dg/typebound_operator_2.f03: Test for error with illegal
NOPASS bindings as operators.
From-SVN: r150856
(check_effective_target_vect_cmdline_needed):: Add alpha to the list
of targets that do not need command line argument to enable SIMD.
From-SVN: r150852
2009-08-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41075
* io/io.h (enum format_token): Add FMT_STAR.
* io/format.c (format_lex): Add case for FMT_STAR.
(parse_format_list): Parse FMT_STAR and check for left paren
after. (next_format0): Modify helper function to check for
unimited format and return the repeated format node. Update
comments to clarify.
From-SVN: r150844
2009-08-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41075
* scanner.c (gfc_next_char_literal): Add comment to improve
readability.
* io.c (enum format_token): Add FMT_STAR. (format_lex): Add case
for '*'. (check_format): Check for left paren after '*'. Change
format checks to use %L to improve format string error locus.
From-SVN: r150843
* s-osinte-kfreebsd-gnu.ads (SA_ONSTACK): New constant.
(stack_t): New record type.
(sigaltstack): New imported function.
(Alternate_Stack): New imported variable.
(Alternate_Stack_Size): New constant.
From-SVN: r150840
2009-08-17 Vasiliy Fofanov <fofanov@adacore.com>
* a-calend-vms.adb: Fix typo.
2009-08-17 Tristan Gingold <gingold@adacore.com>
* s-taprop-posix.adb: Round up the stack size to avoid failure on
Darwin.
2009-08-17 Gary Dismukes <dismukes@adacore.com>
* sem_cat.adb (Validate_Static_Object_Name): Update comment.
2009-08-17 Vincent Celier <celier@adacore.com>
* make.adb (Arguments_Collected): Unneeded, removed
(Change_To_Object_Directory): Use Project directly. Add pragma Assert to
ensure caller does not pass in No_Project.
(Compile): Add new parameter Project. Let procedure
Collect_Arguments_And_Compile provide the proper value.
* switch-c.adb: Add documentation for -gnatea and -gnatez
2009-08-17 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Changed name of package in SAL example, to avoid
clash with Ada 2005 reserved word (interface).
From-SVN: r150838
2009-08-17 Robert Dewar <dewar@adacore.com>
* tbuild.adb: Minor reformatting
2009-08-17 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb (Exp_Ch4.Expand_N_Slice.Make_Temporary): Rename to
Make_Temporary_For_Slice to avoid confusion with Tbuild.Make_Temporary.
Use Tbuild.Make_Temporary to create entity for the temporary.
From-SVN: r150832
2009-08-17 Arnaud Charlet <charlet@adacore.com>
* make.adb (Process_Multilib, Scan_Make_Arg): Refine previous change
and ignore -mieee switch to avoid spawning an extra gcc in this case.
From-SVN: r150829
2009-08-17 Ed Schonberg <schonberg@adacore.com>
* exp_ch3.adb (Build_Discriminant_Formals): If the discriminals already
exist, as is the case for synchronized types, use the type of the
discriminal in the parameter specification, to prevent a spurious
subtype mismatch in gigi.
2009-08-17 Robert Dewar <dewar@adacore.com>
* prj-env.adb: Minor reformatting
* make.adb: Minor reformatting
Comment updates
2009-08-17 Javier Miranda <miranda@adacore.com>
* exp_ch7.adb (Wrap_Transient_Expression): Update comments.
From-SVN: r150828
* prj-part.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-conf.adb
(Processing_Flags.Require_Obj_Dirs): new field, which controls whether
object directories must be present. In the case of gprclean at least,
these are optional (if they do not exist there is nothing to clean)
From-SVN: r150827
2009-08-17 Robert Dewar <dewar@adacore.com>
* prj-env.adb: Minor reformatting
* sem_ch3.adb: Minor reformatting
2009-08-17 Hristian Kirtchev <kirtchev@adacore.com>
* sysdep.c (__gnat_localtime_tzoff): VxWorks case - Flip the sign of
the time zone since VxWorks chose positive values to represent west
time zones and negative for east zones.
From-SVN: r150826
2009-08-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Access_Definition): Do not create an Itype reference for
an anonymous access type whose designated type is generic.
2009-08-17 Arnaud Charlet <charlet@adacore.com>
* comperr.adb (Compiler_Abort): Do not generate a bug box when in
codepeer mode, friendlier.
From-SVN: r150824