aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2009-07-25re PR fortran/33197 (Fortran 2008: math functions)Tobias Burnus8-72/+500
2009-07-25 Tobias Burnus <burnus@net-b.de> Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> PR fortran/33197 * intrinsic.c (add_functions): Support complex arguments for acos,acosh,asin,asinh,atan,atanh. * invoke.texi (ACOS,ACOSH,ASIN,ASINH,ATAN,ATANH): Support complex arguments. * simplify.c (gfc_simplify_acos,gfc_simplify_acosh, gfc_simplify_asin,gfc_simplify_asinh,gfc_simplify_atan, gfc_simplify_atanh,gfc_simplify_atan,gfc_simplify_asinh, gfc_simplify_acosh,gfc_simplify_atanh): Support complex arguments. 2009-07-25 Tobias Burnus <burnus@net-b.de> PR fortran/33197 * intrinsics/c99_functions.c (cacosf,cacos,cacosl,casinf, casin,casind,catanf,catan,catanl,cacoshf,cacosh,cacoshl, casinhf,casinh,casinhf,catanhf,catanh,catanhl): New functions. * c99_protos.h: Add prototypes for those. 2009-07-25 Tobias Burnus <burnus@net-b.de> PR fortran/33197 * gfortran.dg/complex_intrinsic_5.f90: New test. * gfortran.dg/complex_intrinsic_7.f90: New test. Co-Authored-By: Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> From-SVN: r150087
2009-07-25extend.texi (Labels as Values): Document need for noclone.Martin Jambor7-16/+87
2009-07-25 Martin Jambor <mjambor@suse.cz> * doc/extend.texi (Labels as Values): Document need for noclone. (Function Attributes): Document noclone attribute. * c-common.c (c_common_attribute_table): New element for noclone. (handle_noclone_attribute): New function. Forward-declare. * tree-inline.c (tree_versionable_function_p): Check for noclone attribute. * testsuite/gcc.c-torture/execute/pr17377.c: Add noclone attribute to function y. * testsuite/gcc.dg/ipa/noclone-1.c: New test. From-SVN: r150086
2009-07-25target-supports.exp (check_effective_target_static): New procedure.Uros Bizjak5-7/+21
* lib/target-supports.exp (check_effective_target_static): New procedure. * gcc.dg/special/gcsec-1.c (dg-options): Use -static only when supported. * g++.old-deja/g++.law/weak.C: Require static effective target. From-SVN: r150080
2009-07-25re PR fortran/40005 (segfault in gt_ggc_mx_lang_tree_node)Richard Guenther4-7/+20
2009-07-25 Richard Guenther <rguenther@suse.de> PR fortran/40005 * trans-types.c (gfc_get_array_type_bounds): Use build_distinct_type_copy with a proper TYPE_CANONICAL and re-use the type-decl of the original type. * trans-decl.c (build_entry_thunks): Signal cgraph we may not garbage collect. (create_main_function): Likewise. (gfc_generate_function_code): Likewise. * trans-expr.c (gfc_trans_subcomponent_assign): Do not use fold_convert on record types. From-SVN: r150079
2009-07-25re PR fortran/39630 ([F03] Procedure Pointer Components)Janus Weil14-51/+580
2009-07-25 Janus Weil <janus@gcc.gnu.org> PR fortran/39630 * decl.c (match_ppc_decl): Implement the PASS attribute for procedure pointer components. (match_binding_attributes): Ditto. * gfortran.h (gfc_component): Add member 'tb'. (gfc_typebound_proc): Add member 'ppc' and make 'pass_arg' const. * module.c (MOD_VERSION): Bump module version. (binding_ppc): New string constants. (mio_component): Only use formal args if component is a procedure pointer and add 'tb' member. (mio_typebound_proc): Include pass_arg and take care of procedure pointer components. * resolve.c (update_arglist_pass): Add argument 'name' and take care of optional arguments. (extract_ppc_passed_object): New function, analogous to extract_compcall_passed_object, but for procedure pointer components. (update_ppc_arglist): New function, analogous to update_compcall_arglist, but for procedure pointer components. (resolve_typebound_generic_call): Added argument to update_arglist_pass. (resolve_ppc_call, resolve_expr_ppc): Take care of PASS attribute. (resolve_fl_derived): Check the PASS argument for procedure pointer components. * symbol.c (verify_bind_c_derived_type): Reject procedure pointer components in BIND(C) types. 2009-07-25 Janus Weil <janus@gcc.gnu.org> PR fortran/39630 * gfortran.dg/proc_ptr_comp_3.f90: Modified. * gfortran.dg/proc_ptr_comp_pass_1.f90: New. * gfortran.dg/proc_ptr_comp_pass_2.f90: New. * gfortran.dg/proc_ptr_comp_pass_3.f90: New. * gfortran.dg/proc_ptr_comp_pass_4.f90: New. * gfortran.dg/proc_ptr_comp_pass_5.f90: New. * gfortran.dg/typebound_call_10.f03: New. From-SVN: r150078
2009-07-24Core issue 901Jason Merrill4-0/+25
Core issue 901 * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Handle NULL dealloc. * call.c (build_op_delete_call): If this is for a new-expression and the op delete is deleted, do nothing. From-SVN: r150073
2009-07-25Daily bump.GCC Administrator1-1/+1
From-SVN: r150072
2009-07-25re PR rtl-optimization/34999 (Incorrect FDE entries with hot/cold code ↵Jakub Jelinek2-151/+279
section splitting (partition_hot_cold_basic_blocks)) PR rtl-optimization/34999 * dwarf2out.c (struct dw_fde_struct): Add dw_fde_switch_cfi and dw_fde_switched_cold_to_hot fields. (output_cfi_p): New function. (output_call_frame_info): If fde->dw_fde_switched_sections, output 2 FDEs instead of one with corrupted header. (dwarf2out_do_cfi_startproc): New function. (dwarf2out_begin_prologue): Use it. Initialize fde->dw_fde_switch_cfi and fde->dw_fde_switched_cold_to_hot. (dwarf2out_switch_text_section): Compute fde->dw_fde_switched_cold_to_hot. Switch to new text section here. If dwarf2out_do_cfi_asm, emit .cfi_endproc before it and call dwarf2out_do_cfi_startproc plus emit again currently active CFI insns. Otherwise, compute fde->dw_fde_switch_cfi. From-SVN: r150069
2009-07-24* tree-cfg.c (assign_discriminator): Add explicit parentheses.Cary Coutant2-2/+6
From-SVN: r150068
2009-07-24cfghooks.c (split_block): Copy discriminator to new block.Cary Coutant3-3/+12
* cfghooks.c (split_block): Copy discriminator to new block. * tree-cfg.c (assign_discriminator): Check location of last instruction in block as well as first. From-SVN: r150065
2009-07-24linux.c: Use fputs or putc instead of fprintf where appropriate.Uros Bizjak6-11/+20
* config/i386/linux.c: Use fputs or putc instead of fprintf where appropriate. * config/i386/gas.h: Ditto. * config/i386/x86-64.h: Ditto. * config/i386/att.h: Ditto. From-SVN: r150062
2009-07-24Core issue 702Jason Merrill4-15/+35
Core issue 702 * call.c (compare_ics): Give list-initialization of std::init_list priority over conversion to scalar, too. From-SVN: r150059
2009-07-24expmed.c (emit_store_flag): Use a recursive call to optimize the xor case.Andreas Krebbel2-2/+7
2009-07-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * expmed.c (emit_store_flag): Use a recursive call to optimize the xor case. From-SVN: r150054
2009-07-24ipa-prop.h (struct ipa_node_params): New flag node_enqued.Martin Jambor3-22/+55
2009-07-24 Martin Jambor <mjambor@suse.cz> * ipa-prop.h (struct ipa_node_params): New flag node_enqued. (ipa_push_func_to_list_1): Declare. (ipa_push_func_to_list): New function. * ipa-prop.c (ipa_push_func_to_list_1): New function. (ipa_init_func_list): Call ipa_push_func_to_list_1. (ipa_push_func_to_list): Removed. (ipa_pop_func_from_list): Clear node_enqueued flag. From-SVN: r150053
2009-07-24s390.c (override_options): Default max-unrolled-insns to 100 for z10 tuning.Andreas Krebbel2-0/+10
2009-07-24 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.c (override_options): Default max-unrolled-insns to 100 for z10 tuning. From-SVN: r150051
2009-07-24Add missing name of file changed.Richard Earnshaw1-1/+1
From-SVN: r150049
2009-07-24re PR fortran/40822 (Internal compiler error when Fortran intrinsic LEN ↵Janus Weil11-64/+70
referenced before explicit declaration) 2009-07-24 Janus Weil <janus@gcc.gnu.org> PR fortran/40822 * array.c (gfc_resolve_character_array_constructor): Use new function gfc_new_charlen. * decl.c (add_init_expr_to_sym,variable_decl,match_char_spec, gfc_match_implicit): Ditto. * expr.c (gfc_simplify_expr): Ditto. * gfortran.h (gfc_new_charlen): New prototype. * iresolve.c (check_charlen_present,gfc_resolve_char_achar): Use new function gfc_new_charlen. * module.c (mio_charlen): Ditto. * resolve.c (gfc_resolve_substring_charlen, gfc_resolve_character_operator,fixup_charlen,resolve_fl_derived, resolve_symbol): Ditto. * symbol.c (gfc_new_charlen): New function to create a new gfc_charlen structure and add it to a namespace. (gfc_copy_formal_args_intr): Make sure ts.cl is present for CHARACTER variables. 2009-07-24 Janus Weil <janus@gcc.gnu.org> PR fortran/40822 * gfortran.dg/char_length_16.f90: New. From-SVN: r150047
2009-07-24Makefile.in (TREE_DATA_REF_H, [...]): Cleanup use of SCEV_H and TREE_DATA_REF_H.Tobias Grosser2-32/+40
2009-07-24 Tobias Grosser <grosser@fim.uni-passau.de> * Makefile.in (TREE_DATA_REF_H, tree-vrp.o, tree-cfg.o, tree-if-conv.o tree-ssa-loop.o, tree-ssa-loop-niter.o, tree-ssa-loop-ivcanon.o, tree-ssa-loop-prefetch.o, tree-predcom.o, tree-affine.o, tree-scalar-evolution.o, tree-data-ref.o, tree-vect-loop.o, tree-vect-data-refs.o, tree-loop-linear.o, tree-loop-distribution.o tree-parloops.o, tree-pretty-printer.o, fold-const.o, tree-ssa-dce.o, lambda-code.o, params.o): Cleanup use of SCEV_H and TREE_DATA_REF_H. From-SVN: r150045
2009-07-24re PR fortran/40643 (maxloc/minloc: Wrong result for NaN at position 1)Jakub Jelinek12-33/+1641
PR fortran/40643 PR fortran/31067 * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval): Handle Infinities and NaNs properly, optimize. * trans-array.c (gfc_trans_scalarized_loop_end): No longer static. * trans-array.h (gfc_trans_scalarized_loop_end): New prototype. * libgfortran.h (GFC_REAL_4_INFINITY, GFC_REAL_8_INFINITY, GFC_REAL_10_INFINITY, GFC_REAL_16_INFINITY, GFC_REAL_4_QUIET_NAN, GFC_REAL_8_QUIET_NAN, GFC_REAL_10_QUIET_NAN, GFC_REAL_16_QUIET_NAN): Define. * m4/iparm.m4 (atype_inf, atype_nan): Define. * m4/ifunction.m4: Formatting. * m4/iforeach.m4: Likewise. (START_FOREACH_FUNCTION): Initialize dest to all 1s, not all 0s. (START_FOREACH_BLOCK, FINISH_FOREACH_FUNCTION, FINISH_MASKED_FOREACH_FUNCTION): Run foreach block inside a loop until count[0] == extent[0]. * m4/minval.m4: Formatting. Handle NaNs and infinities. Optimize. * m4/maxval.m4: Likewise. * m4/minloc0.m4: Likewise. * m4/maxloc0.m4: Likewise. * m4/minloc1.m4: Likewise. * m4/maxloc1.m4: Likewise. * generated/maxloc0_16_i16.c: Regenerated. * generated/maxloc0_16_i1.c: Likewise. * generated/maxloc0_16_i2.c: Likewise. * generated/maxloc0_16_i4.c: Likewise. * generated/maxloc0_16_i8.c: Likewise. * generated/maxloc0_16_r10.c: Likewise. * generated/maxloc0_16_r16.c: Likewise. * generated/maxloc0_16_r4.c: Likewise. * generated/maxloc0_16_r8.c: Likewise. * generated/maxloc0_4_i16.c: Likewise. * generated/maxloc0_4_i1.c: Likewise. * generated/maxloc0_4_i2.c: Likewise. * generated/maxloc0_4_i4.c: Likewise. * generated/maxloc0_4_i8.c: Likewise. * generated/maxloc0_4_r10.c: Likewise. * generated/maxloc0_4_r16.c: Likewise. * generated/maxloc0_4_r4.c: Likewise. * generated/maxloc0_4_r8.c: Likewise. * generated/maxloc0_8_i16.c: Likewise. * generated/maxloc0_8_i1.c: Likewise. * generated/maxloc0_8_i2.c: Likewise. * generated/maxloc0_8_i4.c: Likewise. * generated/maxloc0_8_i8.c: Likewise. * generated/maxloc0_8_r10.c: Likewise. * generated/maxloc0_8_r16.c: Likewise. * generated/maxloc0_8_r4.c: Likewise. * generated/maxloc0_8_r8.c: Likewise. * generated/maxloc1_16_i16.c: Likewise. * generated/maxloc1_16_i1.c: Likewise. * generated/maxloc1_16_i2.c: Likewise. * generated/maxloc1_16_i4.c: Likewise. * generated/maxloc1_16_i8.c: Likewise. * generated/maxloc1_16_r10.c: Likewise. * generated/maxloc1_16_r16.c: Likewise. * generated/maxloc1_16_r4.c: Likewise. * generated/maxloc1_16_r8.c: Likewise. * generated/maxloc1_4_i16.c: Likewise. * generated/maxloc1_4_i1.c: Likewise. * generated/maxloc1_4_i2.c: Likewise. * generated/maxloc1_4_i4.c: Likewise. * generated/maxloc1_4_i8.c: Likewise. * generated/maxloc1_4_r10.c: Likewise. * generated/maxloc1_4_r16.c: Likewise. * generated/maxloc1_4_r4.c: Likewise. * generated/maxloc1_4_r8.c: Likewise. * generated/maxloc1_8_i16.c: Likewise. * generated/maxloc1_8_i1.c: Likewise. * generated/maxloc1_8_i2.c: Likewise. * generated/maxloc1_8_i4.c: Likewise. * generated/maxloc1_8_i8.c: Likewise. * generated/maxloc1_8_r10.c: Likewise. * generated/maxloc1_8_r16.c: Likewise. * generated/maxloc1_8_r4.c: Likewise. * generated/maxloc1_8_r8.c: Likewise. * generated/maxval_i16.c: Likewise. * generated/maxval_i1.c: Likewise. * generated/maxval_i2.c: Likewise. * generated/maxval_i4.c: Likewise. * generated/maxval_i8.c: Likewise. * generated/maxval_r10.c: Likewise. * generated/maxval_r16.c: Likewise. * generated/maxval_r4.c: Likewise. * generated/maxval_r8.c: Likewise. * generated/minloc0_16_i16.c: Likewise. * generated/minloc0_16_i1.c: Likewise. * generated/minloc0_16_i2.c: Likewise. * generated/minloc0_16_i4.c: Likewise. * generated/minloc0_16_i8.c: Likewise. * generated/minloc0_16_r10.c: Likewise. * generated/minloc0_16_r16.c: Likewise. * generated/minloc0_16_r4.c: Likewise. * generated/minloc0_16_r8.c: Likewise. * generated/minloc0_4_i16.c: Likewise. * generated/minloc0_4_i1.c: Likewise. * generated/minloc0_4_i2.c: Likewise. * generated/minloc0_4_i4.c: Likewise. * generated/minloc0_4_i8.c: Likewise. * generated/minloc0_4_r10.c: Likewise. * generated/minloc0_4_r16.c: Likewise. * generated/minloc0_4_r4.c: Likewise. * generated/minloc0_4_r8.c: Likewise. * generated/minloc0_8_i16.c: Likewise. * generated/minloc0_8_i1.c: Likewise. * generated/minloc0_8_i2.c: Likewise. * generated/minloc0_8_i4.c: Likewise. * generated/minloc0_8_i8.c: Likewise. * generated/minloc0_8_r10.c: Likewise. * generated/minloc0_8_r16.c: Likewise. * generated/minloc0_8_r4.c: Likewise. * generated/minloc0_8_r8.c: Likewise. * generated/minloc1_16_i16.c: Likewise. * generated/minloc1_16_i1.c: Likewise. * generated/minloc1_16_i2.c: Likewise. * generated/minloc1_16_i4.c: Likewise. * generated/minloc1_16_i8.c: Likewise. * generated/minloc1_16_r10.c: Likewise. * generated/minloc1_16_r16.c: Likewise. * generated/minloc1_16_r4.c: Likewise. * generated/minloc1_16_r8.c: Likewise. * generated/minloc1_4_i16.c: Likewise. * generated/minloc1_4_i1.c: Likewise. * generated/minloc1_4_i2.c: Likewise. * generated/minloc1_4_i4.c: Likewise. * generated/minloc1_4_i8.c: Likewise. * generated/minloc1_4_r10.c: Likewise. * generated/minloc1_4_r16.c: Likewise. * generated/minloc1_4_r4.c: Likewise. * generated/minloc1_4_r8.c: Likewise. * generated/minloc1_8_i16.c: Likewise. * generated/minloc1_8_i1.c: Likewise. * generated/minloc1_8_i2.c: Likewise. * generated/minloc1_8_i4.c: Likewise. * generated/minloc1_8_i8.c: Likewise. * generated/minloc1_8_r10.c: Likewise. * generated/minloc1_8_r16.c: Likewise. * generated/minloc1_8_r4.c: Likewise. * generated/minloc1_8_r8.c: Likewise. * generated/minval_i16.c: Likewise. * generated/minval_i1.c: Likewise. * generated/minval_i2.c: Likewise. * generated/minval_i4.c: Likewise. * generated/minval_i8.c: Likewise. * generated/minval_r10.c: Likewise. * generated/minval_r16.c: Likewise. * generated/minval_r4.c: Likewise. * generated/minval_r8.c: Likewise. * generated/product_c10.c: Likewise. * generated/product_c16.c: Likewise. * generated/product_c4.c: Likewise. * generated/product_c8.c: Likewise. * generated/product_i16.c: Likewise. * generated/product_i1.c: Likewise. * generated/product_i2.c: Likewise. * generated/product_i4.c: Likewise. * generated/product_i8.c: Likewise. * generated/product_r10.c: Likewise. * generated/product_r16.c: Likewise. * generated/product_r4.c: Likewise. * generated/product_r8.c: Likewise. * generated/sum_c10.c: Likewise. * generated/sum_c16.c: Likewise. * generated/sum_c4.c: Likewise. * generated/sum_c8.c: Likewise. * generated/sum_i16.c: Likewise. * generated/sum_i1.c: Likewise. * generated/sum_i2.c: Likewise. * generated/sum_i4.c: Likewise. * generated/sum_i8.c: Likewise. * generated/sum_r10.c: Likewise. * generated/sum_r16.c: Likewise. * generated/sum_r4.c: Likewise. * generated/sum_r8.c: Likewise. * gfortran.dg/maxlocval_2.f90: New test. * gfortran.dg/maxlocval_3.f90: New test. * gfortran.dg/maxlocval_4.f90: New test. * gfortran.dg/minlocval_1.f90: New test. * gfortran.dg/minlocval_2.f90: New test. * gfortran.dg/minlocval_3.f90: New test. * gfortran.dg/minlocval_4.f90: New test. From-SVN: r150041
2009-07-24mingw-w64.h (STANDARD_INCLUDE_DIR): Remove and use default set in mingw32.h ↵Kai Tietz3-12/+9
header. 2009-07-24 Kai Tietz <kai.tietz@onevision.com> * config/i386/mingw-w64.h (STANDARD_INCLUDE_DIR): Remove and use default set in mingw32.h header. * config/i386/mingw32.h (STANDARD_INCLUDE_DIR): Use for 32-bit and 64-bit /mingw/include path. (STANDARD_STARTFILE_PREFIX_1): Use for 32-bit and 64-bit /mingw/lib path. From-SVN: r150040
2009-07-24re PR rtl-optimization/40209 (ICE in iv_analyze_def caused by stale ↵Neil Vachharajani2-0/+6
REG_UNUSED note) PR rtl-optimization/40209 * loop-iv.c (iv_analysis_loop_init): Call df_note_add_problem. From-SVN: r150038
2009-07-24Daily bump.GCC Administrator1-1/+1
From-SVN: r150035
2009-07-23dll-4.c: Allow foo1 and foo2 in either order in scan-assembler.Joseph Myers2-1/+7
* gcc.dg/dll-4.c: Allow foo1 and foo2 in either order in scan-assembler. From-SVN: r150031
2009-07-23i386.c: Use ASM_LONG instead of .long.Uros Bizjak3-43/+41
* config/i386/i386.c: Use ASM_LONG instead of .long. Concatenate ASM_LONG, LPREFIX, MCOUNT_NAME and PROFILE_COUNT_REGISTER strings with the rest of string where appropriate. Use fputs or putc instead of fprintf where appropriate. From-SVN: r150030
2009-07-23be.po, [...]: Update.Joseph Myers17-109599/+113865
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, id.po, ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update. From-SVN: r150024
2009-07-23re PR fortran/40839 (gfortran segmentation fault when a unit number is missing)Jakub Jelinek6-4/+33
PR fortran/40839 * io.c (gfc_resolve_dt): Add LOC argument. Fail if dt->io_unit is NULL. Return FAILURE after issuing error about negative UNIT number. (match_io_element): Don't segfault if current_dt->io_unit is NULL. * gfortran.h (gfc_resolve_dt): Adjust prototype. * resolve.c (resolve_code): Adjust caller. * gfortran.dg/pr40839.f90: New test. From-SVN: r150021
2009-07-23Fix PR #.H.J. Lu1-1/+1
From-SVN: r150019
2009-07-23Commit patch #3 of 4 for Power7 VSX supportMichael Meissner11-1578/+3086
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com> Co-Authored-By: Revital Eres <eres@il.ibm.com> From-SVN: r150018
2009-07-23(split for ior/xor with shift and zero-extend): Cast op3 to Richard Earnshaw2-1/+6
unsigned HWI. From-SVN: r150013
2009-07-23[multiple changes]Arnaud Charlet5-11/+58
2009-07-23 Ed Schonberg <schonberg@adacore.com> * sem.adb (Do_Unit_And_Dependents): Now that specs and bodies are not done at the same time, guard against listing a body more than once. 2009-07-23 Robert Dewar <dewar@adacore.com> * exp_ch6.adb: Minor reformatting 2009-07-23 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Analyze_Object_Declaration): A scalar constant with a static expression is known valid. * sem_eval.adb (Compile_Time_Compare): Handle properly non-static operands of a subtype with a single value. From-SVN: r150009
2009-07-23sem.adb (Do_Units_And_Dependents): Process bodies only for units that are in ↵Ed Schonberg2-46/+45
the context of the main unit body. * sem.adb (Do_Units_And_Dependents): Process bodies only for units that are in the context of the main unit body. From-SVN: r150008
2009-07-23[multiple changes]Arnaud Charlet7-72/+139
2009-07-23 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi (Misnamed_Controlling_Parameters gnatcheck rule): Fix misprint in rule description. 2009-07-23 Gary Dismukes <dismukes@adacore.com> * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Replace test that the object declaration is within an extended return statement with direct test of whether the declared object associated with the build-in-place call is a return object, since the enclosing function might not even be a build-in-place function. 2009-07-23 Robert Dewar <dewar@adacore.com> * freeze.adb, prj-nmsc.adb, errout.adb: Minor reformatting Minor code reorganization 2009-07-23 Arnaud Charlet <charlet@adacore.com> * sem_prag.adb (Analyze_Pragma): Do not ignore pragma Pack on records for static analysis, only packed arrays are causing troubles. From-SVN: r150007
2009-07-23[multiple changes]Arnaud Charlet3-18/+56
2009-07-23 Robert Dewar <dewar@adacore.com> * scos.ads: Minor reformatting. 2009-07-23 Pascal Obry <obry@adacore.com> * prj-nmsc.adb: Fix spec/body naming extension on case insensitive systems. From-SVN: r150006
2009-07-23freeze.adb (Set_Small_Size): Remove extra space for consistency with other ↵Arnaud Charlet3-13/+28
similar messages. 2009-07-23 Arnaud Charlet <charlet@adacore.com> * freeze.adb (Set_Small_Size): Remove extra space for consistency with other similar messages. * sem_prag.adb (Freeze_Record_Type, Freeze_Entity): Disable error messages/implicit packing in CodePeer mode. (Analyze_Pragma [case pragma Pack]): Ignore pragma in CodePeer mode. * errout.adb (Special_Msg_Delete): Suppress 'size too small' message in CodePeer mode. From-SVN: r150005
2009-07-23sem_util.adb (Wrong_Type): Special message for cases like A and B = 0Robert Dewar1-0/+24
2009-07-23 Robert Dewar <dewar@adacore.com> * sem_util.adb (Wrong_Type): Special message for cases like A and B = 0 From-SVN: r150004
2009-07-23par-ch4.adb (P_Aggregate_Or_Paren_Expr): Better message for missing comma.Robert Dewar1-2/+25
2009-07-23 Robert Dewar <dewar@adacore.com> * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Better message for missing comma. From-SVN: r150003
2009-07-23sem_aggr.adb (Resolve_Extension_Aggregate): Report an error when the ↵Gary Dismukes2-2/+15
ancestor part is a call to a limited function with an... 2009-07-23 Gary Dismukes <dismukes@adacore.com> * sem_aggr.adb (Resolve_Extension_Aggregate): Report an error when the ancestor part is a call to a limited function with an unconstrained result subtype unless the aggregate has a null extension type. * sem_ch3.adb (Is_Null_Extension): Use the base type when retrieving the parent type declaration to avoid blowups on subtype cases. From-SVN: r150002
2009-07-23einfo.ads, [...]: Add comment.Robert Dewar5-41/+53
2009-07-23 Robert Dewar <dewar@adacore.com> * einfo.ads, g-ssvety.ads, s-regexp.adb, g-sse.ads: Add comment. Minor reformatting. From-SVN: r150001
2009-07-23[multiple changes]Arnaud Charlet3-7/+291
2009-07-23 Yannick Moy <moy@adacore.com> * s-regexp.adb (Check_Well_Formed_Pattern): Called before compiling the pattern. (Raise_Exception_If_No_More_Chars): Remove extra blank in exception string. (Raise_Exception): Ditto. 2009-07-23 Olivier Hainque <hainque@adacore.com> * g-sse.ads: Simplify comment. From-SVN: r150000
2009-07-23re PR middle-end/40830 (gcc.dg/vect/vect-pre-interact.c doesn't work on ↵Michael Matz2-2/+7
Linux/ia32) PR middle-end/40830 * gcc.dg/vect/vect-pre-interact.c: Require vect_float, and don't set options ourself. From-SVN: r149999
2009-07-23linkage.exp: Added -m64 to x86_64 linux target native C compilation where ↵Simon Baldwin2-0/+8
required. * gcc.misc-tests/linkage.exp: Added -m64 to x86_64 linux target native C compilation where required. From-SVN: r149997
2009-07-23decl.c (validate_alignment): For the case of an implicit array base type...Arnaud Charlet1-7/+21
* gcc-interface/decl.c (validate_alignment): For the case of an implicit array base type, look for alignment clause on first subtype. Code clean up. From-SVN: r149994
2009-07-23[multiple changes]Arnaud Charlet8-62/+200
2009-07-23 Olivier Hainque <hainque@adacore.com> * g-ssinty.ads: New unit. GNAT.SSE.Internal_Types. Factorize low level internal type definitions for distinct higher level binding development activities (user type definitions and operations). * gnat_rm.texi: Document it. * g-ssvety.ads: Use it. * gcc-interface/Makefile.in: (x86 32/64 linux, cygwin32 sections): Add g-ssinty.o to EXTRA_GNATRTL_NONTASKING_OBJS. * gcc-interface/utils.c (gnat_internal_attribute_table): Add entry for the "may_alias" attribute. 2009-07-23 Thomas Quinot <quinot@adacore.com> * scos.ads: Minor typo fix * gcc-interface/decl.c (validate_alignment): For the case of an implicit array base type, look for alignment clause on first subtype. Code clean up. 2009-07-23 Ed Schonberg <schonberg@adacore.com> * sem.adb (Walk_Library_Units): Handle properly the case where a unit in the context depends on the spec of the main unit, by delaying processing of the main unit body until all other units have been processed. From-SVN: r149993
2009-07-23[multiple changes]Arnaud Charlet7-30/+71
2009-07-23 Arnaud Charlet <charlet@adacore.com> * a-convec.adb: Add comments about suspicious/subtle code. 2009-07-23 Ed Schonberg <schonberg@adacore.com> * einfo.ads: Document use of Alias in private overriding 2009-07-23 Thomas Quinot <quinot@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause): For the case of an array type, propagate alignment from first subtype to implicit base type so that other subtypes (such as the itypes for aggregates of the type) also receive the expected alignment. * g-comlin.ads: Minor documentation clarification/rewording. * scos.ads: Minor comments update. * lib-writ.ads: Minor reformatting From-SVN: r149991
2009-07-23[multiple changes]Arnaud Charlet5-63/+144
2009-07-23 Gary Dismukes <dismukes@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): For an initialized object of a class-wide interface type that is a return object of a build-in-place function, bypass the interface-related expansions into renamings with displacement conversions, etc. * exp_ch5.adb (Expand_N_Extended_Return_Statement): Add an assertion for the case where a renaming occurs in a build-in-place context, to assert that the bypassing of the build-in-place treatment only occurs in the case of a renaming that is an expansion of a return expression that is itself a build-in-place function call. 2009-07-23 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Try_Primitive_Operation): A primitive operation is a valid candidate interpretation in a prefixed view if it is hidden, but overrides an inherited operation declared in the visible part. 2009-07-23 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer division operands to 64-bit at all in any circumstances. From-SVN: r149990
2009-07-23Update comments.Arnaud Charlet1-15/+20
From-SVN: r149989
2009-07-23re PR target/40832 (gfortran 4.4.0 generates invalid .s file on solaris-x86 ↵Uros Bizjak3-4/+14
using -march=k8 for 130.socorro) PR target/40832 * config/i386/i386.c (output_387_ffreep): Rewrite to return ASM_SHORT instead of .word. * config/i386/i386.md (*tls_global_dynamic_64): Use ASM_SHORT instead of .word in asm template. From-SVN: r149988
2009-07-23[multiple changes]Arnaud Charlet4-56/+87
2009-07-23 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Analyze_N_Op_Rem): Assume operands are valid when checking ranges for mod/rem to see if conditional jump will be generated. (Analyze_N_Op_Rem): Don't try to check actual lower bounds for generating special -1 test for rem, generate it whenever both operands can be negative (match circuit in Sem_Res). (Analyze_N_Op_Rem): Don't go to base type, no longer needed and destroys memory of positive range. * sem_res.adb (Resolve_Arithmetic_Op): Assume operands are valid when checking ranges for mod/rem to see if conditional jump will be generated 2009-07-23 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Build_Equivalent_Record_Aggregate): If the type of a scalar components has non-static bounds, the equivalent aggregate cannot be built, even if the expression is static, because range checks will be generated. From-SVN: r149987
2009-07-23exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer division ↵Robert Dewar2-6/+22
operands to 64-bit inside a conversion if... 2009-07-23 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer division operands to 64-bit inside a conversion if 64-bit division not available. From-SVN: r149985
2009-07-23[multiple changes]Arnaud Charlet10-112/+151
2009-07-23 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi: Update doc on Misnamed_Identifiers rule. 2009-07-23 Javier Miranda <miranda@adacore.com> * sinfo.ads, sinfo.adb (SCIL_Entity/Set_SCIL_Entity): new subprograms (Entity/Set_Entity): not available in N_Null_Statement nodes (Is_Scil_Node): renamed as Is_SCIL_Node (Scil_Nkind): renamed as SCIL_Nkind (Scil_Related_Node): renamed as SCIL_Related_Node (Scil_Target_Prim): renamed as SCIL_Target_Prim (Set_Is_Scil_Node): Renamed as Set_Is_SCIL_Node (Set_Scil_Related_Node): Renamed as Set_SCIL_Related_Node (Set_Scil_Target_Prim): Renamed as Set_SCIL_Target_Prim Update documentation * exp_disp.ads (Scil_Node_Kind): Renamed as SCIL_Node_Kind (Get_Scil_Node_Kind): Renamed as Get_SCIL_Node_Kind (New_Scil_Node): Renamed as New_SCIL_Node * exp_disp.adb Update all occurrences of New_Scil_Node to New_SCIL_Node. (Get_Scil_Node_Kind): Renamed as Get_SCIL_Node_Kind (New_Scil_Node): Renamed as New_SCIL_Node * exp_ch3.adb Update occurrence of New_Scil_Node to New_SCIL_Node. 2009-07-23 Robert Dewar <dewar@adacore.com> * sem_prag.adb: No_Return is an Ada 2005 pragma, not a GNAT pragma * snames.ads-tmpl: No_Return is an Ada 2005 pragma, not a GNAT pragma * einfo.adb: Minor reformatting From-SVN: r149984