summaryrefslogtreecommitdiffstats
path: root/gcc/ada/gcc-interface
Commit message (Collapse)AuthorAgeFilesLines
...
* ChangeLog gcc/ktietz2011-03-211-18/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2011-03-21 Kai Tietz <ktietz@redhat.com> PR target/12171 * doc/plugins.texi: Adjust documentation for plugin register_callback. * tree.h (attribute_spec): Add new member affects_type_identity. - Zitierten Text anzeigen - * attribs.c (empty_attribute_table): Adjust attribute_spec initializers. * config/alpha/alpha.c: Likewise. * config/arc/arc.c: Likewise. * config/arm/arm.c: Likewise. * config/avr/avr.c: Likewise. * config/bfin/bfin.c: Likewise. * config/crx/crx.c: Likewise. * config/darwin.h: Likewise. * config/h8300/h8300.c: Likewise. * config/i386/cygming.h: Likewise. * config/i386/i386.c: Likewise. * config/ia64/ia64.c: Likewise. * config/m32c/m32c.c: Likewise. * config/m32r/m32r.c: Likewise. * config/m68hc11/m68hc11.c: Likewise. * config/m68k/m68k.c: Likewise. * config/mcore/mcore.c: Likewise. * config/mep/mep.c: Likewise. * config/microblaze/microblaze.c: Likewise. * config/mips/mips.c: Likewise. * config/rs6000/rs6000.c: Likewise. * config/rx/rx.c: Likewise. * config/sh/sh.c: Likewise. * config/sol2.h: Likewise. * config/sparc/sparc.c: Likewise. * config/spu/spu.c: Likewise. * config/stormy16/stormy16.c: Likewise. * config/v850/v850.c: Likewise. ChangeLog gcc/cp 2011-03-21 Kai Tietz <ktietz@redhat.com> PR target/12171 * tree.c (cxx_attribute_table): Adjust table. ChangeLog gcc/testsuite 2011-03-21 Kai Tietz <ktietz@redhat.com> PR target/12171 * g++.dg/plugin/attribute_plugin.c: Adjust test. ChangeLog gcc/java 2011-03-21 Kai Tietz <ktietz@redhat.com> PR target/12171 * lang.c (java_attribute_table): Adjust table. ChangeLog gcc/lto 2011-03-21 Kai Tietz <ktietz@redhat.com> PR target/12171 * lto-lang.c (lto_attribute_table): Adjust table. ChangeLog gcc/ada 2011-03-21 Kai Tietz <ktietz@redhat.com> PR target/12171 * gcc-interface/utils.c (gnat_internal_attribute_table): Add new element. ChangeLog gcc/c-family 2011-03-17 Kai Tietz PR target/12171 * c-common.c (c_common_attribute_table): Add new element. (c_common_format_attribute_table): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171209 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (elaborate_expression_1): Try harder to findebotcazou2011-03-171-30/+47
| | | | | | | | out whether the expression is read-only. Short-circuit placeholder case and rename a couple of local variables. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171106 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/gigi.h (smaller_form_type_p): Declare.ebotcazou2011-03-173-25/+39
| | | | | | | | | * gcc-interface/trans.c (smaller_form_type_p): Make global and move... * gcc-interface/utils.c (smaller_form_type_p): ...to here. (convert): Deal with conversions from a smaller form type specially. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171091 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I andebotcazou2011-02-141-7/+6
| | | | | | | its argument, except for the special -I- switch. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170150 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.ebotcazou2011-02-081-3/+9
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169950 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead ofebotcazou2011-02-034-145/+120
| | | | | | | | | | | | | | | | GNAT_FORMAL. * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to... * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE instead of GNAT_FORMAL. Protect the expression against multiple uses. Do not generate the check directly, instead instantiate the template check present in the descriptor. (make_descriptor_field): Move around. (build_vms_descriptor32): Build a template check in the POINTER field. (build_vms_descriptor): Remove useless suffixes. * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169788 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-01-26 Richard Guenther <rguenther@suse.de>rguenth2011-01-261-1/+1
| | | | | | | | | | PR bootstrap/47467 * targext.c: Include config.h. * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H) dependency. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169285 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.ebotcazou2011-01-041-5/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168460 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of theebotcazou2011-01-041-2/+8
| | | | | | | end-of-case on the end label and its associated gotos, if any. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168458 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate theebotcazou2011-01-041-25/+25
| | | | | | | | expressions of the parameter cache within the statement group of the CICO mechanism. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168456 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.ebotcazou2011-01-041-11/+74
| | | | | | | | | | | | | (set_end_locus_from_node): New function. (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we make and the function end_locus. (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus for the elaboration subprogram. (set_gnu_expr_location_from_node) <default case>: Use it to attempt to set the end_locus of the expression as well. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168455 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ada/47131ebotcazou2011-01-041-22/+1
| | | | | | | | * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make variables that are referenced in exception handlers volatile. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168454 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (substitute_in_type): Do not deal withebotcazou2010-12-312-6/+1
| | | | | | | | | LANG_TYPE, METHOD_TYPE or OFFSET_TYPE. * gcc-interface/utils.c (handle_vector_size_attribute): Do not deal with METHOD_TYPE or OFFSET_TYPE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168381 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/froydnj2010-12-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-aux-info.c (gen_formal_list_for_type): Use prototype_p. * c-decl.c (diagnose_arglist_conflict): Likewise. (diagnose_mismatched_decls, merge_decls): Likewise. (c_builtin_function, c_builtin_function_ext_scope): Likewise. (start_decl, start_function): Likewise. * c-tree.h (C_DECL_ISNT_PROTOTYPED): Likewise. * config/ia64/ia64.h (INIT_CUMULATIVE_ARGS): Likewise. * config/mep/mep.c (mep_validate_interrupt): Likewise. * config/pa/pa.h (INIT_CUMULATIVE_ARGS): Likewise. * config/rs6000/rs6000.c (init_cumulative_args): Likewise. * config/sh/sh.c (sh_init_cumulative_args): Likewise. * config/sparc/sparc.c (init_cumulative_args): Likewise. * dwarf2out.c (add_prototyped_attribute): Likewise. (gen_subprogram_die): Likewise. * ipa-type-escape.c (check_function_parameter_and_return_types): Likewise. (check_call): Likewise. * tree-ssa.c (useless_type_conversion_p): Likewise. gcc/ada/ * gcc-interface/utils.c (handle_nonnull_attribute): Use prototype_p. (handle_sentinel_attribute): Likewise. gcc/c-family/ * c-common.c (handle_nonnull_attribute, handle_sentinel_attribute): Use prototype_p. gcc/cp/ * decl.c (decls_match, duplicate_decls): Use prototype_p. * pt.c (push_template_decl_real): Likewise. gcc/lto/ * lto-lang.c (handle_nonnull_attribute, handle_sentinel_attribute): Use prototype_p. gcc/objc/ * objc-act.c (next_sjlj_build_enter_and_setjmp): Use prototype_p. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168181 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix typos in gcc/ada.rwild2010-12-203-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ada/: * projects.texi: Fix typos. * gnat_rm.texi: Likewise. * gnat_ugn.texi: Likewise. * sem_util.adb: Fix typo in variable, typos in comments. * a-btgbso.adb: Fix typos in comments. * a-cbdlli.adb, a-cbhase.ads, a-cdlili.adb, a-cobove.adb, a-coinve.adb, a-convec.adb, a-direct.ads, a-strunb-shared.adb, a-strunb-shared.ads, a-stuten.ads, a-stwiun-shared.adb, a-stwiun-shared.ads, a-stzunb-shared.adb, a-stzunb-shared.ads, a-suenco.adb, a-suenst.adb, a-suewst.adb, a-suezst.adb, ali.ads, aspects.ads, atree.ads, binde.adb, bindgen.adb, checks.adb, checks.ads, einfo.ads, err_vars.ads, errout.adb, errout.ads, exp_aggr.adb, exp_attr.adb, exp_cg.adb, exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_dbug.ads, exp_disp.adb, exp_fixd.ads, freeze.adb, g-altive.ads, g-comlin.ads, g-excact.ads, g-mbdira.adb, g-sechas.ads, g-sehash.ads, g-sha1.ads, g-sha224.ads, g-sha256.ads, g-sha384.ads, g-sha512.ads, g-shsh32.ads, g-shsh64.ads, g-socket.adb, g-socket.ads, g-sothco.ads, gcc-interface/decl.c, gcc-interface/trans.c, gcc-interface/utils2.c, gnat1drv.adb, init.c, inline.adb, link.c, locales.c, make.adb, mingw32.h, namet.ads, osint.adb, par-ch12.adb, par-ch13.adb, par-ch3.adb, par-ch4.adb, par-prag.adb, par.adb, par_sco.adb, prepcomp.adb, prj-conf.ads, prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-tree.ads, prj-util.ads, prj.adb, prj.ads, s-auxdec-vms-alpha.adb, s-auxdec-vms_64.ads, s-oscons-tmplt.c, s-osinte-vxworks.ads, s-osprim-mingw.adb, s-regexp.adb, s-stusta.adb, s-taprop-mingw.adb, s-taprop-solaris.adb, scn.adb, scos.ads, sem.adb, sem_aggr.adb, sem_attr.adb, sem_aux.adb, sem_aux.ads, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb, sem_ch13.ads, sem_ch3.adb, sem_ch4.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_disp.adb, sem_disp.ads, sem_eval.adb, sem_intr.adb, sem_prag.adb, sem_res.adb, sem_scil.adb, sem_util.ads, sem_warn.adb, sem_warn.ads, sinfo.ads, socket.c, styleg.adb, switch.ads, sysdep.c, tb-alvxw.c, xoscons.adb: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168082 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_General_Access_Type>:ebotcazou2010-12-132-8/+14
| | | | | | | | | | Build a stub DECL for the dummy fat pointer type in the unconstrained array case. * gcc-interface/utils.c (update_pointer_to): Set the DECL_ORIGINAL_TYPE for all the variants in the fat pointer case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167758 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (can_be_lower_p): New predicate.ebotcazou2010-12-131-7/+30
| | | | | | | | (Loop_Statement_to_gnu): Do not generate the entry condition if we know that it will be true. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167757 138bc75d-0d04-0410-961f-82ee72b054a4
* * common.opt (N, Q, Qn, Qy, Z, n, r, s, t): New options.jsm282010-12-031-0/+3
| | | | | | | | | | | | | * gcc.c (cc1_options): Add %{Qy:}. ada: * gcc-interface/lang.opt (k8): New option. java: * lang.opt (static-libgcj): New option. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167429 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-11-30 Laurynas Biveinis <laurynas.biveinis@gmail.com>lauras2010-12-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tree.h (struct call_expr_arg_iterator_d): Remove GTY tag. (const_call_expr_arg_iterator_d): Likewise. (expanded_location): Likewise. * c-tree.h (struct c_arg_tag_d): Likewise. * dwarf2out.c (struct cfa_loc): Likewise. (struct skeleton_chain_struct): Likewise. * except.c (struct ttypes_filter): Likewise. * cselib.h (struct cselib_val_struct): Likewise. (elt_loc_list): Likewise. (elt_list): Likewise. * varasm.c (struct addr_const): Likewise. * tree-flow.h (struct edge_prediction): Likewise. (struct int_tree_map): Likewise. (struct _edge_var_map): Likewise. ada: 2010-11-30 Laurynas Biveinis <laurynas.biveinis@gmail.com> * gcc-interface/decl.c (struct subst_pair_d): Remove GTY tag. (variant_desc_d): Likewise. cp: 2010-11-30 Laurynas Biveinis <laurynas.biveinis@gmail.com> * cp-tree.h (struct aggr_init_expr_arg_iterator_d): Remove GTY tag. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167406 138bc75d-0d04-0410-961f-82ee72b054a4
* * common.opt (flag_stack_check): New Variable entry.jsm282010-12-011-0/+6
| | | | | | | | | | | | | | | | | (fcompare-debug-second): Use Var. * flags.h (flag_compare_debug, flag_stack_check): Remove. * opts.c (flag_compare_debug): Remove. (common_handle_option): Don't handle OPT_fcompare_debug_second. Set opts->x_flag_stack_check for OPT_fstack_check_. * toplev.c (flag_stack_check): Remove. ada: * gcc-interface/misc.c (flag_compare_debug, flag_stack_check): Undefine as macros then define as variables. (gnat_post_options): Set variables from global_options. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167331 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ada/46574ebotcazou2010-11-271-2/+2
| | | | | | | * gcc-interface/utils2.c (compare_elmt_bitpos): Fix typos. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167207 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ada/40777ebotcazou2010-11-271-2/+6
| | | | | | | | * gcc-interface/targtyps.c (get_target_double_scalar_alignment): Guard use of TARGET_64BIT macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167205 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Alsoebotcazou2010-11-181-100/+89
| | | | | | | | use return-by-invisible-reference if the return type is By_Reference. Tidy up and skip the processing of the return type if it is void. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166916 138bc75d-0d04-0410-961f-82ee72b054a4
* * doc/invoke.texi (-dy): Remove.jsm282010-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * langhooks-def.h (lhd_do_nothing_i): Don't declare. (LANG_HOOKS_PARSE_FILE): Define to lhd_do_nothing. * langhooks.c (lhd_do_nothing_i): Remove. * langhooks.h (lang_hooks.parse_file): Take no arguments. * toplev.c (set_yydebug): Remove. (compile_file): Update call to lang_hooks.parse_file. (decode_d_option): Don't handle -dy. ada: * gcc-interface/misc.c (gnat_parse_file): Take no arguments. c-family: * c-opts.c (c_common_parse_file): Take no arguments. * c-common.h (c_common_parse_file): Update prototype. fortran: * f95-lang.c (gfc_be_parse_file): Take no arguments. java: * jcf-parse.c (java_parse_file): Take no arguments. * java-tree.h (java_parse_file): Update prototype. lto: * lto.c (lto_main): Take no arguments. * lto.h (lto_main): Update prototype. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166868 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (addressable_p): Rewrite obsolete paragraph inebotcazou2010-11-171-4/+5
| | | | | | | head comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166864 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (OPTS_H): Define.jsm282010-11-122-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (c-decl.o, c-family/c-common.o, c-family/c-opts.o, c-family/c-pch.o, c-family/c-pragma.o, gcc.o, gccspec.o, cppspec.o, options.o, gcc-options.o, lto-opts.o, opts.o, opts-common.o, toplev.o, passes.o, matrix-reorg.o, ipa-struct-reorg.o, PLUGIN_HEADERS): Use $(OPTS_H). * gcc.c (driver_handle_option): Take location_t parameter. (process_command, do_self_spec): Update calls to read_cmdline_option. * langhooks-def.h (lhd_handle_option): Take location_t parameter. * langhooks.c (lhd_handle_option): Take location_t parameter. * langhooks.h (handle_option): Take location_t parameter. * lto-opts.c (lto_reissue_options): Update call to set_option. * opts-common.c (handle_option): Make static. Take location_t parameter and pass it to other functions. (handle_generated_option): Take location_t parameter and pass it to other functions. (read_cmdline_option): Take location_t parameter and pass it to other functions. Use warning_at and error_at. (set_option): Take location_t parameter and pass it to other functions. * opts.c (common_handle_option): Take location_t parameter and pass it to other functions. (enable_warning_as_error): Make static. Take location_t parameter and pass it to other functions. (lang_handle_option): Take location_t parameter and pass it to other functions. (target_handle_option): Take location_t parameter. (read_cmdline_options, maybe_default_option, maybe_default_options, default_options_optimization, decode_options): Take location_t parameter and pass it to other functions. * opts.h: Include input.h. (struct cl_option_handler_func, decode_options, set_option, handle_generated_option, read_cmdline_option): Take location_t parameters. (handle_option, enable_warning_as_error): Remove. * toplev.c (toplev_main): Update call to decode_options. ada: * gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTS_H). * gcc-interface/misc.c (gnat_handle_option): Take location_t parameter. c-family: * c-common.c (parse_optimize_options): Update call to decode_options. * c-common.h (c_common_handle_option): Update prototype. * c-opts.c (c_common_handle_option): Take location_t parameter and pass it to other functions. cp: * Make-lang.in (g++spec.o): Use $(OPTS_H). fortran: * Make-lang.in (gfortranspec.o): Use $(OPTS_H). * gfortran.h (gfc_handle_option): Take location_t parameter. * options.c (gfc_handle_option): Take location_t parameter. java: * Make-lang.in (jvspec.o, java/lang.o): Use $(OPTS_H). * lang.c (java_handle_option): Take location_t parameter. lto: * Make-lang.in (lto/lto.o): Use $(OPTS_H). * lto-lang.c (lto_handle_option): Take location_t parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166688 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (gigi): Don't set 'pure' flag on SJLJ routines.ebotcazou2010-11-102-30/+19
| | | | | | | | | * gcc-interface/utils2.c (compare_arrays): Add LOC parameter. Set it directly on all the comparison expressions. (build_binary_op): Pass input_location to compare_arrays. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166533 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (lvalue_required_p) <N_Type_Conversion>): Lookebotcazou2010-11-101-18/+15
| | | | | | | | | | through it for elementary types as well. <N_Unchecked_Type_Conversion>: Adjust to above change. <N_Allocator>: Likewise. (gnat_to_gnu): Do not attempt to rewrite boolean literals. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166532 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set DECL_ARTIFICIALebotcazou2010-11-101-6/+10
| | | | | | | | | on the reused DECL node coming from a renamed object. Set DECL_IGNORED_P on the DECL node built for renaming entities if they don't need debug info. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166530 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils.c (save_gnu_tree): Improve comments.ebotcazou2010-11-091-8/+7
| | | | | | | (get_gnu_tree): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166485 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree.h (contains_placeholder_p): Fix comment.ebotcazou2010-11-091-27/+31
| | | | | | | | | | | | | | | | (type_contains_placeholder_p): Adjust comment. * tree.c (contains_placeholder_p): Fix comment. (type_contains_placeholder_1): Do not recurse on pointed-to types and adjust comment. (type_contains_placeholder_p): Add comment. ada/ * gcc-interface/decl.c (finish_fat_pointer_type): New function. (gnat_to_gnu_entity) <E_Array_Type>: Use it to build the fat pointer type. <E_Access_Type>: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166484 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/gigi.h (add_stmt_force): Declare.ebotcazou2010-11-032-11/+39
| | | | | | | | | | | | | (add_stmt_with_node_force): Likewise. * gcc-interface/trans.c (Attribute_to_gnu): Don't set TREE_SIDE_EFFECTS on the SAVE_EXPR built for cached expressions of parameter attributes. (Subprogram_Body_to_gnu): Force evaluation of the SAVE_EXPR built for cached expressions of parameter attributes. (add_stmt_force): New function. (add_stmt_with_node_force): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166222 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (gigi): Fix formatting issues.ebotcazou2010-10-272-38/+42
| | | | | | | | | | (build_raise_check): Likewise. (gnat_to_gnu): Likewise. * gcc-interface/utils2.c (build_call_raise_range): Likewise. (build_call_raise_column): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166017 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>charlet2010-10-263-18/+39
| | | | | | | | | | | * gcc-interface/utils2.c (build_compound_expr): New function. * gcc-interface/gigi.h (build_compound_expr): Declare it. * gcc-interface/trans.c (Attribute_to_gnu, call_to_gnu): Use it. (gnat_to_gnu, case N_Expression_With_Actions): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165958 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/Make-lang.in: Update dependencies.charlet2010-10-261-56/+56
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165947 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils2.c: Include flags.h and remove prototypes.ebotcazou2010-10-252-6/+7
| | | | | | | | | (build_unary_op) <TRUTH_NOT_EXPR>: When not optimizing, fold the result of the call to invert_truthvalue_loc. * gcc-interface/Make-lang.in (utils2.o): Add $(FLAGS_H). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165928 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils.c (update_pointer_to): Clear TYPE_POINTER_TO andebotcazou2010-10-251-0/+2
| | | | | | | | TYPE_REFERENCE_TO of the old type after redirecting its pointer and reference types. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165926 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not setebotcazou2010-10-251-1/+0
| | | | | | | TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165925 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-25 Jose Ruiz <ruiz@adacore.com>charlet2010-10-251-21/+18
| | | | | | | | | * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for powerpc-linux): Reorganize target pairs so that it works on linux and ElinOS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165921 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity, case E_Function): Allowebotcazou2010-10-252-118/+251
| | | | | | | | | | | | | | | | | In Out/Out parameters for functions. * gcc-interface/trans.c (gnu_return_var_stack): New variable. (create_init_temporary): New static function. (Subprogram_Body_to_gnu): Handle In Out/Out parameters for functions. (call_to_gnu): Likewise. Use create_init_temporary in order to create temporaries for unaligned parameters and return value. If there is an unaligned In Out or Out parameter passed by reference, push a binding level if not already done. If a binding level has been pushed and the call is returning a value, create the call statement. (gnat_to_gnu) <N_Return_Statement>: Handle In Out/Out parameters for functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165914 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-22 Robert Dewar <dewar@adacore.com>charlet2010-10-221-500/+459
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * par-ch5.adb: Minor reformatting. * gcc-interface/Make-lang.in: Update dependencies. 2010-10-22 Robert Dewar <dewar@adacore.com> * a-except.adb, a-except-2005.adb: Add new Rcheck entry. * exp_ch13.adb (Add_Call): Make sure subtype is marked with Has_Predicates set to True if it inherits predicates. * sem_attr.adb: Handle 'First/'Last/'Range for predicated types * types.ads (PE_Bad_Attribute_For_Predicate): New reason code * types.h: Add new Rcheck entry. * einfo.ads, einfo.adb (Static_Predicate): New field. Minor code reorganization (file float routines in proper section) Fix bad field name in comments. 2010-10-22 Robert Dewar <dewar@adacore.com> * sem_eval.adb (Subtypes_Statically_Compatible): Check null exclusion case. 2010-10-22 Vincent Celier <celier@adacore.com> * prj-conf.adb (Get_Config_Switches): Detect if there is at least one declaration of IDE'Compiler_Command for one of the language in the main project. (Do_Autoconf): If there were at least one Compiler_Command declared and no target, invoke gprconfig with --target=all instead of the normalized host name. 2010-10-22 Robert Dewar <dewar@adacore.com> * par-ch4.adb: Update syntax in comments for Ada 2012. * sinfo.ads: Update syntax in comments for Ada 2012 * par-ch3.adb (Check_Restricted_Expression): Remove "in Ada 2012 mode" from msg. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165822 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-22 Thomas Quinot <quinot@adacore.com>charlet2010-10-221-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * exp_ch5.adb, sem_ch5.adb, sinfo.ads, snames.ads-tmpl, par-ch5.adb: Minor reformatting. 2010-10-22 Geert Bosch <bosch@adacore.com> * stand.ads: Fix typo in comment. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb: Enable in-out parameter for functions. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Analyze_Quantified_Expression): Handle properly loop iterators that are transformed into container iterators after analysis. * exp_ch4.adb (Expand_N_Quantified_Expression): Handle properly both iterator forms before rewriting as a loop. 2010-10-22 Brett Porter <porter@adacore.com> * a-locale.adb, a-locale.ads, locales.c: New files. * Makefile.rtl: Add a-locale * gcc-interface/Makefile.in: Add locales.c git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165812 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-22 Geert Bosch <bosch@adacore.com>charlet2010-10-221-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gcc-interface/Make-lang.in: Remove ttypef.ads * checks.adb: Use Machine_Mantissa_Value and Machine_Radix_Value instead of Machine_Mantissa and Machine_Radix. * cstand.adb (P_Float_Range): Directly print the Type_Low_Bound and Type_High_Bound of the type, instead of choosing constants from Ttypef. (Set_Float_Bounds): Compute the bounds based on Machine_Radix_Value, Machine_Emax_Value and Machine_Mantissa_Value instead of special-casing each type. * einfo.ads (Machine_Emax_Value, Machine_Emin_Value, Machine_Mantissa_Value, Machine_Radix_Value, Model_Emin_Value, Model_Epsilon_Value, Model_Mantissa_Value, Model_Small_Value, Safe_Emax_Value, Safe_First_Value, Safe_Last_Value): Add new synthesized floating point attributes. * einfo.adb (Float_Rep): Determine the kind of floating point representation used for a given type. (Machine_Emax_Value, Machine_Emin_Value, Machine_Mantissa_Value, Machine_Radix_Value): Implement based on Float_Rep_Kind of a type and the number of digits in the type. (Model_Emin_Value, Model_Epsilon_Value, Model_Mantissa_Value, Model_Small_Value, Safe_Emax_Value, Safe_First_Value, Safe_Last_Value): Implement new synthesized floating point attributes based on the various machine attributes. * eval_fat.ads: Remove Machine_Mantissa and Machine_Radix. * eval_fat.adb (Machine_Mantissa, Machine_Radix): Remove. Use the Machine_Mantissa_Value and Machine_Radix_Value functions instead. * exp_vfpt.adb (VAXFF_Digits, VAXDF_Digits, VAXFG_Digits): Define local constants, instead of using constants from Ttypef. * gnat_rm.texi: Reword comments referencing Ttypef. * sem_attr.ads: Reword comment referencing Ttypef. * sem_attr.adb (Float_Attribute_Universal_Integer, Float_Attribute_Universal_Real): Remove. (Attribute_Machine_Emax, Attribute_Machine_Emin, Attribute_Machine_Mantissa, Attribute_Model_Epsilon, Attribute_Model_Mantissa, Attribute_Model_Small, Attribute_Safe_Emax, Attribute_Safe_First, Attribute_Safe_Last, Model_Small_Value): Use attributes in Einfo instead of Float_Attribute_Universal_Real and Float_Attribute_Universal_Integer and all explicit constants. * sem_util.ads, sem_util.adb (Real_Convert): Remove. * sem_vfpt.adb (VAXDF_Digits, VAXFF_Digits, VAXGF_Digits, IEEEL_Digits, IEEES_Digits): New local constants, in order to remove dependency on Ttypef. * tbuild.ads (Make_Float_Literal): New function. * tbuild.adb (Make_Float_Literal): New function to create a new N_Real_Literal, constructing it as simple as possible for best output of constants in -gnatS. * ttypef.ads: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165808 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils.c, gcc-interface/gigi.h: Minor reformatting.charlet2010-10-222-2/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165806 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-22 Thomas Quinot <quinot@adacore.com>charlet2010-10-222-17/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * einfo.ads (Declaration_Node): Clarify documentation, in particular regarding what is returned for subprogram entities. 2010-10-22 Arnaud Charlet <charlet@adacore.com> * exp_attr.adb (Make_Range_Test): Generate a Range node instead of explicit comparisons, generates simpler expanded code. * a-except-2005.adb (Rcheck_06_Ext): New. * gcc-interface/trans.c (gigi, gnat_to_gnu): Handle validity checks like range checks. * gcc-interface/Make-lang.in: Update dependencies. 2010-10-22 Robert Dewar <dewar@adacore.com> * sem_ch3.adb (Array_Type_Declaration): Error for subtype wi predicate for index type (Constrain_Index): Error of subtype wi predicate in index constraint * sem_ch9.adb (Analyze_Entry_Declaration): Error of subtype wi predicate in entry family. * sem_res.adb (Resolve_Slice): Error of type wi predicate in slice. 2010-10-22 Javier Miranda <miranda@adacore.com> * sem_util.ads, sem_util.adb (Collect_Parents): New subprogram. (Original_Corresponding_Operation): New subprogram. (Visible_Ancestors): New subprogram. * sem_ch6.adb (New_Overloaded_Entity): Handle new case of dispatching operation that overrides a hidden inherited primitive. * sem_disp.adb (Find_Hidden_Overridden_Primitive): New subprogram. (Check_Dispatching_Operation): if the new dispatching operation does not override a visible primtive then check if it overrides some hidden inherited primitive. 2010-10-22 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_With_Clause): If the parent_unit_name in a with clause is a child unit that denotes a renaming, replace the parent_unit_name with a reference to the renamed unit, because the prefix is irrelevant to subsequent visibility.. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165805 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-21 Robert Dewar <dewar@adacore.com>charlet2010-10-211-1/+0
| | | | | | | | | | | | | | | | | | * sem_ch3.adb: Minor reformatting. 2010-10-21 Thomas Quinot <quinot@adacore.com> * einfo.ads (Next_Girder_Discriminant): Remove obsolete description for removed routine. 2010-10-21 Nicolas Roche <roche@adacore.com> * gnatmem.adb, memroot.adb, memroot.ads, gmem.c, gcc-interface/Makefile.in: Remove gnatmem specific files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165776 138bc75d-0d04-0410-961f-82ee72b054a4
* Update dependencies.charlet2010-10-211-46/+48
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165767 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-19 Robert Dewar <dewar@adacore.com>charlet2010-10-195-277/+496
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_eval.adb: Minor reformatting. 2010-10-19 Tristan Gingold <gingold@adacore.com> * exp_ch4.adb (Expand_N_And_Op, Expand_N_Or_Op, Expand_N_Xor_Op): Call Expand_Intrinsic_Call if the function is intrinsic. * exp_intr_adb (Expand_Binary_Operator): Handle VMS case for logical binary operator on the unsigned_quadword record. * exp_intr.ads (Expand_Intrinsic_Call): Update comments. 2010-10-19 Geert Bosch <bosch@adacore.com> * gnat_rm.texi (pragma Float_Representation): Fix typo. 2010-10-19 Arnaud Charlet <charlet@adacore.com> * switch-c.adb (Scan_Front_End_Switches): Add handling of -gnateE. * fe.h (Exception_Extra_Info): Declare. * usage.adb (usage): Add -gnateE doc. * checks.adb (Install_Null_Excluding_Check): Use better sloc. * sem_util.adb (Insert_Explicit_Dereference): Ditto. * gnat_ugn.texi: Document -gnateE switch. * a-except.adb (Set_Exception_C_Msg): New parameter Column. * a-except-2005.adb (Set_Exception_C_Msg): New parameter Column. (Raise_Constraint_Error_Msg): Ditto. (Image): New helper function. (Rcheck_00_Ext, Rcheck_05_Ext, Rcheck_12_Ext): New procedure with more detailed exception information. Adjust calls to Set_Exception_C_Msg and Raise_Constraint_Error_Msg. * a-exexda.adb (Set_Exception_C_Msg): New parameter Column. * opt.ads (Exception_Extra_Info): New flag. * gcc-interface/utils.c (gnat_raise_decls_ext): New. * gcc-interface/utils2.c (build_call_raise_range, build_call_raise_column): New functions. * gcc-interface/gigi.h (exception_info_kind, gnat_raise_decls_ext, build_call_raise_range, build_call_raise_column): Declare. gcc-interface/trans.c (build_raise_check): New function. (gigi): Initialize gnat_raise_decls_ext. (gnat_to_gnu): Add initial support for -gnateE switch. * gcc-interface/Make-lang.in: Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165696 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-18 Jose Ruiz <ruiz@adacore.com>charlet2010-10-181-1/+3
| | | | | | | | | | | | | | | * adaint.c (__gnat_pthread_setaffinity_np, __gnat_pthread_attr_setaffinity_np): Remove wrappers, no longer needed. * s-osinte-linux.ads (pthread_setaffinity_np, pthread_attr_setaffinity_np): Remove use of wrappers. * s-taprop-linux.adb (Create_Task, Initialize): Restore check to verify whether the affinity functionality is available in the OS. * gcc-interface/utils.c: Set TREE_STATIC on functions only when there are defined. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165635 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-18 Jose Ruiz <ruiz@adacore.com>charlet2010-10-182-43/+28
| | | | | | | | | | | | | | | | | * adaint.c (__gnat_pthread_setaffinity_np, __gnat_pthread_attr_setaffinity_np): Add these wrappers which check the availability of the underlying OS functionality before calling. * s-osinte-linux.ads (pthread_setaffinity_np, pthread_attr_setaffinity_np): Call a wrapper instead of the OS function to perform a check of its availability. * s-taprop-linux.adb (Create_Task): Remove the check to verify whether the affinity functionality is available in the OS. Now done in a wrapper * gcc-interface/Makefile.in: Remove vmshandler.asm, unused. * gcc-interface/Make-lang.in: Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165628 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud