ecdbd01aa1
From-SVN: r203992
10089 lines
377 KiB
Plaintext
10089 lines
377 KiB
Plaintext
2010-12-31 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (substitute_in_type): Do not deal with
|
||
LANG_TYPE, METHOD_TYPE or OFFSET_TYPE.
|
||
* gcc-interface/utils.c (handle_vector_size_attribute): Do not deal
|
||
with METHOD_TYPE or OFFSET_TYPE.
|
||
|
||
2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/utils.c (handle_nonnull_attribute): Use prototype_p.
|
||
(handle_sentinel_attribute): Likewise.
|
||
|
||
2010-12-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||
|
||
PR bootstrap/47027
|
||
* a-stwiun-shared.ads: Rewrap overlong comment line.
|
||
|
||
* 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.
|
||
|
||
2010-12-13 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_General_Access_Type>:
|
||
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.
|
||
|
||
2010-12-13 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (can_be_lower_p): New predicate.
|
||
(Loop_Statement_to_gnu): Do not generate the entry condition if we know
|
||
that it will be true.
|
||
|
||
2010-12-03 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/lang.opt (k8): New option.
|
||
|
||
2010-12-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
||
* gnatvsn.adb (Gnat_Version_String): Don't overrun Ver_Len_Max.
|
||
* gnatvsn.ads (Ver_Len_Max): Bump up to 256.
|
||
* g-comver.adb (Ver_Len_Max): Likewise.
|
||
|
||
2010-12-03 Laurynas Biveinis <laurynas.biveinis@gmail.com>
|
||
|
||
* gcc-interface/decl.c (struct subst_pair_d): Remove GTY tag.
|
||
(variant_desc_d): Likewise.
|
||
|
||
2010-12-01 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* 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.
|
||
|
||
2010-11-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR ada/46574
|
||
* gcc-interface/utils2.c (compare_elmt_bitpos): Fix typos.
|
||
|
||
2010-11-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR ada/40777
|
||
* gcc-interface/targtyps.c (get_target_double_scalar_alignment): Guard
|
||
use of TARGET_64BIT macro.
|
||
|
||
2010-11-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* s-osinte-linux.ads (sigset_t): Use unsigned_char subtype directly.
|
||
(unsigned_long_long_t): New modular type.
|
||
(pthread_cond_t): Add alignment clause.
|
||
|
||
2010-11-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnatvsn.adb (Version_String): Change type to C-like array of chars.
|
||
(Gnat_Version_String): Adjust to above change.
|
||
|
||
2010-11-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Also
|
||
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.
|
||
|
||
2010-11-17 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (gnat_parse_file): Take no arguments.
|
||
|
||
2010-11-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (addressable_p): Rewrite obsolete paragraph in
|
||
head comment.
|
||
|
||
2010-11-12 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTS_H).
|
||
* gcc-interface/misc.c (gnat_handle_option): Take location_t parameter.
|
||
|
||
2010-11-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gigi): Don't set 'pure' flag on SJLJ routines.
|
||
* 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.
|
||
|
||
2010-11-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (lvalue_required_p) <N_Type_Conversion>): Look
|
||
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.
|
||
|
||
2010-11-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not set DECL_ARTIFICIAL
|
||
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.
|
||
|
||
2010-11-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (save_gnu_tree): Improve comments.
|
||
(get_gnu_tree): Likewise.
|
||
|
||
2010-11-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-11-02 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (add_stmt_force): Declare.
|
||
(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.
|
||
|
||
2010-10-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gigi): Fix formatting issues.
|
||
(build_raise_check): Likewise.
|
||
(gnat_to_gnu): Likewise.
|
||
* gcc-interface/utils2.c (build_call_raise_range): Likewise.
|
||
(build_call_raise_column): Likewise.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch5.adb, exp_prag.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
|
||
sem_dist.adb, exp_ch7.adb, exp_util.adb, exp_attr.adb, exp_ch9.adb,
|
||
sem_ch10.adb, checks.adb, sem_prag.adb, par-endh.adb, sem_ch12.adb,
|
||
exp_smem.adb, sem_attr.adb, exp_ch4.adb, exp_ch6.adb, exp_ch8.adb,
|
||
sem_ch6.adb, exp_disp.adb, exp_aggr.adb, exp_dist.adb, sem_ch13.adb,
|
||
par-ch3.adb, par-ch5.adb, exp_strm.adb, exp_ch3.adb: Minor reformatting
|
||
* opt.ads: Minor comment fix.
|
||
|
||
2010-10-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnat_ugn.texi: Document option -s for gnatlink.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.ads: Move documentation on checksum stuff here from prj-nmsc
|
||
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): Move
|
||
documentation on checksum versions to opt.ads.
|
||
|
||
2010-10-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* opt.ads (Checksum_Accumulate_Token_Checksum): New Boolean flag,
|
||
defaulted to True.
|
||
(Checksum_GNAT_6_3): New name of Old_Checksums
|
||
(Checksum_GNAT_5_03): New name of Old_Old_Checksums
|
||
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): Adapt to new
|
||
names of Opt flags.
|
||
Set Checksum_Accumulate_Token_Checksum to False if GNAT version is 5.03
|
||
or before.
|
||
* scng.adb (Accumulate_Token_Checksum_GNAT_6_3): New name of procedure
|
||
Accumulate_Token_Checksum_Old.
|
||
(Accumulate_Token_Checksum_GNAT_5_03): New name of procedure
|
||
Accumulate_Token_Checksum_Old_Old.
|
||
(Nlit): Call Accumulate_Token_Checksum only if
|
||
Opt.Checksum_Accumulate_Token_Checksum is True.
|
||
(Scan): Ditto
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Build_Invariant_Procedure): New calling sequence.
|
||
(Build_Invariant_Procedure): Properly handle analysis of invariant
|
||
expression with proper end-of-visible-decls visibility.
|
||
* sem_ch13.ads (Build_Invariant_Procedure): Changed calling sequence.
|
||
* sem_ch3.adb (Process_Full_View): Don't build invariant procedure
|
||
(too late).
|
||
(Analyze_Private_Extension_Declaration): Propagate invariant flags.
|
||
* sem_ch7.adb (Analyze_Package_Specification): Build invariant
|
||
procedures.
|
||
|
||
2010-10-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* opt.ads (Old_Checksums, Old_Old_Checksums): New Boolean flags,
|
||
defaulted to False.
|
||
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): When
|
||
processing attribute Toolchain_Version ("Ada"), set Opt.Old_Checksums
|
||
and Opt.Old_Old_Checksums depending on the GNAT version.
|
||
* scng.adb (Accumulate_Token_Checksum_Old): New procedure.
|
||
(Accumulate_Token_Checksum_Old_Old): New procedure.
|
||
(Scan): For keywords, when Opt.Old_Checksums is True, call one of the
|
||
alternative procedures Accumulate_Token_Checksum_Old or
|
||
Accumulate_Token_Checksum_Old_Old, instead of Accumulate_Token_Checksum.
|
||
|
||
2010-10-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
||
* 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.
|
||
|
||
2010-10-26 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_prag.adb (Process_Import_Or_Interface): Skip primitives of
|
||
interface types when processing all the entities in the homonym chain
|
||
that are declared in the same declarative part.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Process_Range_In_Decl): If the range is part of a
|
||
quantified expression, the insertion point for range checks will be
|
||
arbitrarily far in the tree.
|
||
* sem_ch5.adb (One_Bound): Use Insert_Actions for the declaration of
|
||
the temporary that holds the value of the bounds.
|
||
* sem_res.adb (Resolve_Quantified_Expressions): Disable expansion of
|
||
condition until the full expression is expanded.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.ads: Comment fix.
|
||
* sem_cat.adb: Treat categorization errors as warnings in GNAT Mode.
|
||
* switch-c.adb: GNAT Mode does not set
|
||
Treat_Categorization_Errors_As_Warnings.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Analyze_Subprogram_Renaming): Improve warning when an
|
||
operator renames another one with a different name.
|
||
|
||
2010-10-26 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch4.adb, exp_pakd.adb: Minor reformatting.
|
||
|
||
2010-10-26 Bob Duff <duff@adacore.com>
|
||
|
||
* namet.adb: Improve hash function.
|
||
|
||
2010-10-26 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_disp.adb: Minor reformatting.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb, sem_ch4.adb, sem_disp.adb, switch-c.adb: Minor
|
||
reformatting.
|
||
* gnat_ugn.texi: Document -gnateP switch.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.ads (Treat_Categorization_Errors_As_Warnings): New flag
|
||
* sem_cat.adb (Check_Categorization_Dependencies):
|
||
Use Check_Categorization_Dependencies
|
||
* switch-c.adb: GNAT Mode sets Treat_Categorization_Errors_As_Warnings
|
||
-gnateP sets Treat_Categorization_Errors_As_Warnings
|
||
* usage.adb: Add line for -gnateP switch
|
||
|
||
2010-10-26 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): Handle primitives
|
||
inherited from the parent that cover interface primitives.
|
||
(Derive_Progenitor_Subprograms): Handle primitives inherited from
|
||
the parent that cover interface primitives.
|
||
* sem_disp.adb (Find_Primitive_Covering_Interface): When searching in
|
||
the list of primitives of the type extend the test to include inherited
|
||
private primitives.
|
||
* sem_ch6.ads (Is_Interface_Conformant): Add missing documentation.
|
||
* sem_ch7.adb (Declare_Inherited_Private_Subprograms): Add missing
|
||
barrier to the loop searching for explicit overriding primitives.
|
||
* sem_ch4.adb (Analyze_Indexed_Component_Form): Add missing barrier
|
||
before accessing attribute Entity.
|
||
|
||
2010-10-26 Bob Duff <duff@adacore.com>
|
||
|
||
* make.adb: Call Namet.Finalize, so we can get statistics.
|
||
|
||
2010-10-26 Geert Bosch <bosch@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use the subprogram_body
|
||
node to determine wether the subprogram is a rewritten parameterized
|
||
expression.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.ads: Minor code reorganization. Alphabetize Warning switches.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb, xsinfo.adb: Minor reformatting.
|
||
|
||
2010-10-26 Bob Duff <duff@adacore.com>
|
||
|
||
* namet.adb (Finalize): More cleanup of statistics printouts.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* ceinfo.adb: Minor reformatting.
|
||
|
||
2010-10-26 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch6.adb (Check_Overriding_Indicator, New_Overloaded_Entity): When
|
||
setting attribute Overridden_Operation do not reference the entities
|
||
generated by Derive_Subprograms but their aliased entity (which
|
||
is the primitive inherited from the parent type).
|
||
|
||
2010-10-26 Bob Duff <duff@adacore.com>
|
||
|
||
* namet.adb, namet.ads: Minor cleanup.
|
||
|
||
2010-10-26 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Is_Base_Type): New function, use it where
|
||
appropriate.
|
||
* exp_ch6.adb, exp_dbug.adb, exp_disp.adb, freeze.adb, lib-xref.adb,
|
||
sem_aux.adb, sem_ch3.adb, sem_ch7.adb, sem_ch8.adb (Is_Base_Type): Use
|
||
this new abstraction where appropriate.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb: Code clean up.
|
||
|
||
2010-10-26 Paul Hilfinger <hilfinger@adacore.com>
|
||
|
||
* exp_dbug.ads: Document effect of 'pragma Unchecked_Union' on
|
||
debugging data.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Note_Possible_Modification): If the target of an
|
||
assignment is the bound variable in an iterator, the domain of
|
||
iteration, i.e. array or container, is modified as well.
|
||
|
||
2010-10-26 Bob Duff <duff@adacore.com>
|
||
|
||
* Make-generated.in: Make the relevant make targets depend on
|
||
ceinfo.adb and csinfo.adb.
|
||
* csinfo.adb, ceinfo.adb: Make sure it raises an exception on failure,
|
||
so when called from xeinfo, the failure will be noticed.
|
||
* sinfo.ads: Update comments to reflect the fact that xsinfo runs csinfo
|
||
* xsinfo.adb, xeinfo.adb: Run ceinfo to check for errors. Close files.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb: Set properly parent field of operands of concatenation.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Check_Infinite_Recursion): A recursive call within a
|
||
conditional expression or a case expression should not generate an
|
||
infinite recursion warning.
|
||
|
||
2010-10-26 Javier Miranda <miranda@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Is_Overriding_Operation): Removed.
|
||
(Set_Is_Overriding_Operation): Removed.
|
||
* sem_ch3.adb (Check_Abstract_Overriding): Remove redundant call to
|
||
Is_Overriding_Operation.
|
||
* exp_ch7.adb (Check_Visibly_Controlled): Remove redundant call to
|
||
Is_Overriding_Operation.
|
||
* sem_ch7.adb (Declare_Inherited_Private_Subprograms): Remove redundant
|
||
call to Set_Is_Overriding_Operation.
|
||
* sem_util.adb (Collect_Primitive_Operations): Replace test on
|
||
Is_Overriding_Operation by test on the presence of attribute
|
||
Overridden_Operation.
|
||
(Original_Corresponding_Operation): Remove redundant call to attribute
|
||
Is_Overriding_Operation.
|
||
* sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Remove
|
||
redundant call to Is_Overriding_Operation.
|
||
(Verify_Overriding_Indicator): Replace several occurrences of test on
|
||
Is_Overriding_Operation by test on the presence of attribute
|
||
Overridden_Operation.
|
||
(Check_Convention): Replace test on Is_Overriding_Operation by test on
|
||
the presence of Overridden_Operation.
|
||
(Check_Overriding_Indicator): Add missing decoration of attribute
|
||
Overridden_Operation. Minor code cleanup.
|
||
(New_Overloaded_Entity): Replace occurrence of test on
|
||
Is_Overriding_Operation by test on the presence of attribute
|
||
Overridden_Operation. Remove redundant setting of attribute
|
||
Is_Overriding_Operation plus minor code reorganization.
|
||
Add missing decoration of attribute Overridden_Operation.
|
||
* sem_elim.adb (Set_Eliminated): Replace test on
|
||
Is_Overriding_Operation by test on the presence of Overridden_Operation.
|
||
* sem_ch8.adb (Analyze_Subprogram_Renaming): Replace test on
|
||
Is_Overriding_Operation by test on the presence of
|
||
Overridden_Operation. Remove a redundant test on attribute
|
||
Is_Overriding_Operation.
|
||
* lib-xref.adb (Generate_Reference): Replace test on
|
||
Is_Overriding_Operation by test on the presence of Overridden_Operation.
|
||
(Output_References): Replace test on Is_Overriding_Operation by test on
|
||
the presence of Overridden_Operation.
|
||
* sem_disp.adb (Override_Dispatching_Operation): Replace test on
|
||
Is_Overriding_Operation by test on the presence of Overridden_Operation.
|
||
Add missing decoration of attribute Overridden_Operation.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Properly check
|
||
RM 13.4.1(10).
|
||
|
||
2010-10-26 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Actuals): In case of certain
|
||
internally-generated type conversions (created by OK_Convert_To, so the
|
||
Conversion_OK flag is set), avoid fetching the component type when it's
|
||
not really an array type, but a private type completed by an array type.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch5.adb: Adjust format of error message.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (OK_To_Reference): Removed, no longer used.
|
||
* exp_util.adb (Side_Effect_Free): Put in safety barrier in code to
|
||
detect renamings to avoid problems with invariants.
|
||
* sem_ch13.adb (Replace_Type_References_Generic): New procedure
|
||
(Build_Invariant_Procedure): Use Replace_Type_Reference_Generic
|
||
(Build_Predicate_Function): Use Replace_Type_Reference_Generic
|
||
* sem_res.adb, sem_ch8.adb, sem_ch4.adb (OK_To_Reference): Remove
|
||
references, flag is no longer set.
|
||
|
||
2010-10-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.ads (Source_Data): New Boolean component Initialized, defaulted
|
||
to False, set to True when Source_Data is completely initialized.
|
||
* prj-env.adb: Minor comment fix.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_case.adb, sem_ch6.adb, sem_util.adb: Minor reformatting.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch5.adb (Analyze_Iteration_Scheme): Diagnose attempt to use thew
|
||
form "for X in A" when A is an array object. This form is only intended
|
||
for containers.
|
||
* sem_eval.adb: Fix reference to non-existing field of type conversion
|
||
node.
|
||
* sem_case.adb (Check_Choices): Improve error reporting for overlapping
|
||
choices in case statements.
|
||
|
||
2010-10-26 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* exp_disp.adb (Expand_Interface_Actuals): When expanding an actual for
|
||
a class-wide interface formal that involves applying a displacement
|
||
conversion to the actual, check for the case of calling a build-in-place
|
||
function and handle generation of the implicit BIP parameters (call
|
||
Make_Build_In_Place_Call_In_Anonymous_Context).
|
||
Add with and use of Exp_Ch6.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb, sem_cat.ads: Minor reformatting.
|
||
|
||
2010-10-26 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* vms_data.ads: Define VMS qualifier for gnatelim '--ignore' option
|
||
|
||
2010-10-26 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_util.adb (Has_Preelaborable_Initialization.Check_Components):
|
||
For a discriminant, use Discriminant_Default_Value rather than
|
||
Expression (Declaration_Node (D)).
|
||
|
||
2010-10-26 Geert Bosch <bosch@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Parameterized
|
||
expressions don't need a spec, even when style checks require
|
||
subprograms to have one.
|
||
|
||
2010-10-26 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnatvsn.ads: Update comments.
|
||
|
||
2010-10-26 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* Makefile.rtl, impunit.adb: Add bounded hashed set and bounded hashed
|
||
map containers.
|
||
* a-cohata.ads: Add declaration of generic package for bounded hash
|
||
table types.
|
||
* a-chtgbo.ads, a-chtgbo.adb, a-chtgbk.ads, a-chtgbk.adb, a-cbhase.ads,
|
||
a-cbhase.adb, a-cbhama.ads, a-cbhama.adb: New files.
|
||
|
||
2010-10-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_warn.adb: Improve warning message on overlapping actuals.
|
||
|
||
2010-10-26 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch4.adb, exp_dist.adb: Minor reformatting.
|
||
|
||
2010-10-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* makeusg.adb (Makeusg): Add lines for switches -vl, -vm and -vh.
|
||
|
||
2010-10-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb (Expand_N_Object_Declaration): Move generation of
|
||
predicate check to analyzer, since too much rewriting occurs in the
|
||
analyzer.
|
||
* sem_ch13.adb (Build_Predicate_Function): Change calling sequence, and
|
||
change the order in which things are done to fix several errors in
|
||
dealing with qualification of the type name.
|
||
(Build_Static_Predicate): Built static predicate after full analysis
|
||
of the body. This is necessary to fix several problems.
|
||
* sem_ch3.adb (Analyze_Object_Declaration): Move predicate check here
|
||
from expander, since too much expansion occurs in the analyzer to leave
|
||
it that late.
|
||
(Analyze_Object_Declaration): Change parameter Include_Null to new name
|
||
Include_Implicit in Is_Partially_Initialized_Type call.
|
||
(Analyze_Subtype_Declaration): Make sure predicates are proapagated in
|
||
some strange cases of internal subtype generation.
|
||
* sem_util.ads, sem_util.adb (Is_Partially_Initialized_Type): Change
|
||
Include_Null to Include_Implicit, now includes the case of
|
||
discriminants.
|
||
|
||
2010-10-26 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_rm.texi: Revise the documentation for pragma Eliminate.
|
||
|
||
2010-10-26 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* Makefile.rtl, impunit.adb: Added bounded list container.
|
||
* a-cbdlli.ads, a-cbdlli.adb: New file.
|
||
|
||
2010-10-25 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils2.c: Include flags.h and remove prototypes.
|
||
(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).
|
||
|
||
2010-10-25 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (update_pointer_to): Clear TYPE_POINTER_TO and
|
||
TYPE_REFERENCE_TO of the old type after redirecting its pointer and
|
||
reference types.
|
||
|
||
2010-10-25 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not set
|
||
TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
|
||
|
||
2010-10-25 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for powerpc-linux):
|
||
Reorganize target pairs so that it works on linux and ElinOS.
|
||
|
||
2010-10-25 Pascal Obry <obry@adacore.com>
|
||
|
||
* adaint.c (__gnat_file_time_name_attr): Use GetFileAttributesEx to get
|
||
the timestamp. A bit faster than opening/closing the file.
|
||
(__gnat_stat_to_attr): Remove kludge for Windows.
|
||
(__gnat_file_exists_attr): Likewise.
|
||
The timestamp is now retreived using GetFileAttributesEx as faster.
|
||
|
||
2010-10-25 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Derive_Interface_Subprogram): New subprogram.
|
||
(Derive_Subprograms): For abstract private types transfer to the full
|
||
view entities of uncovered interface primitives. Required because if
|
||
the interface primitives are left in the private part of the package
|
||
they will be decorated as hidden when the analysis of the enclosing
|
||
package completes (and hence the interface primitive is not visible
|
||
for dispatching calls).
|
||
|
||
2010-10-25 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* Makefile.rtl, impunit.adb: Added bounded set and bounded map
|
||
containers.
|
||
* a-crbltr.ads: Added declaration of generic package for bounded tree
|
||
types.
|
||
* a-rbtgbo.ads, a-rbtgbo.adb, a-rbtgbk.ads, a-rbtgbk.adb, a-btgbso.ads,
|
||
a-btgbso.adb, a-cborse.ads, a-cborse.adb, a-cborma.ads, a-cborma.adb:
|
||
New.
|
||
|
||
2010-10-25 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_util.adb: Minor reformatting.
|
||
* usage.adb: Fix usage line for -gnatwh.
|
||
|
||
2010-10-25 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch12.adb (Analyze_Package_Instantiation): For an
|
||
instantiation in an RCI spec, omit package body if instantiation comes
|
||
from source, even as a nested
|
||
package.
|
||
* exp_dist.adb (Add_Calling_Stubs_To_Declarations,
|
||
*_Support.Add_Receiving_Stubs_To_Declarations): Handle the case of
|
||
nested packages, package instantiations and subprogram instantiations.
|
||
|
||
2010-10-25 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch5.adb (Expand_Predicated_Loop): Remove code for loop through
|
||
non-static predicate, since we agree not to allow this.
|
||
(Expand_Predicated_Loop): Properlay handle false predicate (null
|
||
list in Static_Predicate field.
|
||
* sem_ch13.adb (Build_Static_Predicate): Extensive changes to clean up
|
||
handling of more general predicate forms.
|
||
|
||
2010-10-25 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb, sem_util.adb: Minor reformatting.
|
||
* sem_ch8.adb (Find_Selected_Component): Allow selection from instance
|
||
of type in predicate or invariant expression.
|
||
|
||
2010-10-25 Pascal Obry <obry@adacore.com>
|
||
|
||
* adaint.c (__gnat_stat_to_attr): Can set the timestamp on Windows now.
|
||
(f2t): New routine.
|
||
(__gnat_stat): Rewrite Win32 version.
|
||
|
||
2010-10-25 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_warn.adb, einfo.ads, exp_ch4.adb: Minor comment fix
|
||
* sem_case.adb: Comment clarification for loops through false
|
||
predicates.
|
||
* sem_util.adb: Minor reformatting
|
||
(Check_Order_Dependence): Fix bad double blank in error message
|
||
|
||
2010-10-25 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Membership_Op): in Ada_2012 a membership
|
||
operation can have a single alternative that is a value of the type.
|
||
Rewrite operation as an equality test.
|
||
|
||
2010-10-25 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* Makefile.rtl, impunit.adb: Added a-cobove (bounded vector container)
|
||
to lists.
|
||
* a-contai.ads: Added declaration of Capacity_Error exception.
|
||
* a-cobove.ads, a-cobove.adb: New files.
|
||
|
||
2010-10-25 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* uname.adb: Revert previous change, no longer needed after change
|
||
in par-ch10.adb.
|
||
|
||
2010-10-25 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* scos.ads: Minor comment fix.
|
||
|
||
2010-10-25 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch5.adb (Analyze_Assignment_Statement): Check dangerous order
|
||
dependence.
|
||
* sem_ch6.adb (Analyze_Procedure_Call_Statement): Ditto.
|
||
* sem_res.adb (Analyze_Actuals): Add actual to list of actuals for
|
||
current construct, for subsequent order dependence checking.
|
||
(Resolve): Check order dependence on expressions that are not
|
||
subexpressions.
|
||
* sem_util.adb (Check_Order_Dependence): Code cleanup, to correspond
|
||
to latest version of AI05-144-2.
|
||
* sem_warn.adb (Warn_On_Overlapping_Actuals): Code cleanup.
|
||
|
||
2010-10-25 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Build_Static_Predicate): Moved out of
|
||
Build_Predicate_Function.
|
||
(Build_Static_Predicate): Complet rewrite for more general predicates
|
||
|
||
2010-10-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity, case E_Function): Allow
|
||
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.
|
||
|
||
2010-10-22 Ben Brosgol <brosgol@adacore.com>
|
||
|
||
* gnat_rm.texi: Add chapter on Ada 2012 support.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch12.adb: Minor reformatting.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_dist.adb: Mark missing case of nested package when expanding
|
||
stubs.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* par-ch10.adb: Discard incomplete with_clause.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* checks.adb (Enable_Range_Check): Remove code suppressing range check
|
||
if static predicate present, not needed.
|
||
* exp_attr.adb (Expand_Pred_Succ): Check Suppress_Assignment_Checks flag
|
||
* exp_ch3.adb (Expand_N_Object_Declaration): Check
|
||
Suppress_Assignment_Checks flag.
|
||
* exp_ch4.adb (Expand_N_In): Make some corrections for proper handling
|
||
of ranges when predicates are present.
|
||
* exp_ch5.adb (Expand_Predicated_Loop): New procedure
|
||
(Expand_N_Assignment_Statement): Check Suppress_Assignment_Checks flag
|
||
(Expand_N_Loop_Statement): Handle loops over predicated types
|
||
* sem_case.adb (Analyze_Choices): Remove extra blank in error message.
|
||
* sem_ch13.adb (Build_Predicate_Function.Add_Call): Suppress info
|
||
message for inheritance if within a generic instance, not useful there!
|
||
(Build_Static_Predicate): Optimize test in predicate function
|
||
based on static ranges determined.
|
||
* sem_ch5.adb (Analyze_Iteration_Scheme): Error for loop through
|
||
subtype with non-static predicate.
|
||
* sinfo.ads, sinfo.adb (Suppress_Assignment_Checks): New flag.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* uname.adb (Get_Unit_Name.Add_Node_Name): If encountering an error
|
||
node in the unit name, propagate Program_Error to guard against
|
||
cascaded errors.
|
||
|
||
2010-10-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch8.adb (Find_Selected_Component): Do not generate a subtype for
|
||
selected components of dispatch table wrappers.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch9.adb (Make_Initialize_Protection): A protected type that
|
||
implements an interface must be treated as if it has entries, to
|
||
support dispatching select statements.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_aggr.adb, sem_ch3.adb: Minor reformatting.
|
||
|
||
2010-10-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_aggr.adb (Resolve_Array_Aggregate.Add): If the type of the
|
||
aggregate has a non standard representation the attributes 'Val and
|
||
'Pos expand into function calls and the resulting expression is
|
||
considered non-safe for reevaluation by the backend. Relocate it into
|
||
a constant temporary to indicate to the backend that it is side
|
||
effects free.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Concurrent_Derived_Type): Create declaration for
|
||
derived corresponding record type only when expansion is enabled.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_case.adb, sem_attr.adb (Bad_Predicated_Subtype_Use): Change order
|
||
of parameters.
|
||
* sem_ch13.adb (Build_Predicate_Function): Don't give inheritance
|
||
messages for generic actual subtypes.
|
||
* sem_ch9.adb, sem_res.adb, sem_util.adb, sem_util.ads, sem_ch3.adb
|
||
(Bad_Predicated_Subtype_Use): Use this procedure.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch5.adb: Minor reformatting.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-except-2005.adb (Rmsg_18): New message text.
|
||
* a-except.adb (Rmsg_18): New message text.
|
||
* atree.adb (List25): New function
|
||
(Set_List25): New procedure
|
||
* atree.ads (List25): New function
|
||
(Set_List25): New procedure
|
||
* einfo.adb (Static_Predicate): Is now a list
|
||
(OK_To_Reference): Present in all entities
|
||
* einfo.ads (Static_Predicate): Is now a list
|
||
(OK_To_Reference): Applies to all entities
|
||
* exp_ch13.adb (Build_Predicate_Function): Moved to Sem_Ch13
|
||
* sem_attr.adb (Bad_Attribute_For_Predicate): Call
|
||
Bad_Predicated_Subtype_Use.
|
||
* sem_case.ads, sem_case.adb: Major surgery to deal with predicated
|
||
subtype case.
|
||
* sem_ch13.adb (Build_Predicate_Function): Moved from Exp_Ch13 to
|
||
Sem_Ch13.
|
||
(Build_Static_Predicate): New procedure handles static predicates.
|
||
* sem_ch3.adb (Analyze_Subtype_Declaration): Delay freeze on subtype
|
||
with no constraint if ancestor subtype has predicates.
|
||
(Analyze_Variant_Part): New calling sequence for Analyze_Choices
|
||
* sem_ch4.adb (Junk_Operand): Don't complain about OK_To_Reference
|
||
entity.
|
||
(Analyze_Case_Expression): New calling sequence for Analyze_Choices
|
||
* sem_ch5.adb (Analyze_Case_Statement): New calling sequence for
|
||
Analyze_Choices.
|
||
* sem_util.ads, sem_util.adb (Bad_Predicated_Subtype_Use): New procedure
|
||
* types.ads (PE_Bad_Predicated_Generic_Type): Replaces
|
||
PE_Bad_Attribute_For_Predicate.
|
||
* atree.h: Add definition of List25.
|
||
|
||
2010-10-22 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* gnatlink.adb (Process_Binder_File): Remove CLI-specific code, now
|
||
moved to dotnet-ld.
|
||
(Gnatlink): Remove CLI-specific code, moved to dotnet-ld
|
||
* bindgen.adb (Gen_Object_Files_Options): Do not issue -L switches with
|
||
the .NET compiler, useless and unsupported.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.ads (Get_Num_Lit_From_Pos): Fix errors in documentation,
|
||
this returns a Node_Id for a reference to the entity, not the entity
|
||
itself!
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch5.adb (Analyze_Iteration_Scheme): use Insert_Actions when
|
||
bounds require a temporary.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb: Minor reformatting.
|
||
* sinfo.ads: Minor comment fixes for Ada 2012 syntax.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-10-22 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch3.adb (Check_Or_Process_Discriminants): In Ada 2012, allow
|
||
limited tagged types to have defaulted discriminants. Customize the
|
||
error message for the Ada 2012 case.
|
||
(Process_Discriminants): In Ada 2012, allow limited tagged types to have
|
||
defaulted discriminants. Customize the error message for the Ada 2012
|
||
case.
|
||
* sem_ch6.adb (Create_Extra_Formals): Suppress creation of the extra
|
||
formal for out formals of discriminated types in the case where the
|
||
underlying type is a limited tagged type.
|
||
* exp_attr.adb (Expand_N_Attribute_Reference, case
|
||
Attribute_Constrained): Return True for 'Constrained when the
|
||
underlying type of the prefix is a limited tagged type.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch3.adb (Complete_Private_Subtype): The full view of the subtype
|
||
may already have a rep item chain inherited from the full view of the
|
||
base type, so do not overwrite it when propagating rep items from the
|
||
partial view of the subtype.
|
||
* sem_ch3.adb: Minor code reorganization. Minor reformatting.
|
||
|
||
2010-10-22 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi (gnatmetric): Remove description of debug option.
|
||
|
||
2010-10-22 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* adaint.c (__gnat_number_of_cpus): Add implementation for VMS.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* par-ch5.adb: Set properly starting sloc of loop parameter.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (May_Be_Lvalue): An actual in a function call can be an
|
||
lvalue in Ada2012, if the function has in-out parameters.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* cstand.adb, einfo.adb, exp_attr.adb, sem_prag.adb, sem_vfpt.adb,
|
||
sem_ch10.adb: Minor reformatting.
|
||
|
||
2010-10-22 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi: Remove most of the content of gnatcheck chapter.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_attr.adb: Handle indexed P'old.
|
||
|
||
2010-10-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* cstand.adb (Build_Float_Type): Set Float_Rep according to platform.
|
||
* einfo.ads (Float_Rep): New attribute.
|
||
(Float_Rep_Kind): Move from body. Add comments.
|
||
* einfo.adb (Float_Rep_Kind): Move to spec
|
||
(Float_Rep): Now a real field instead of local function.
|
||
(Set_Float_Rep): New procedure to set floating point representation
|
||
(Set_Vax_Float): Remove.
|
||
(Write_Entity_Flags): Remove Vax_Float flag.
|
||
(Write_Field10_Name): Add E_Floating_Point_Type case for Float_Rep.
|
||
* exp_attr.adb (Attribute_Valid): Use case statement for representation
|
||
specific processing.
|
||
* sem_ch3.adb (Build_Derived_Numeric_Type,
|
||
Floating_Point_Type_Declaration): Set Float_Rep instead of Vax_Float
|
||
attribute.
|
||
* sem_util.ads, sem_util.adb (Is_AAMP_Float): Remove.
|
||
* sem_vfpt.adb (Set_D_Float, Set_F_Float, Set_G_Float, Set_IEEE_Long,
|
||
Set_IEEE_Short): Set Float_Rep instead of Vax_Float attribute.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sprint.adb: Minor reformatting.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb (Expand_N_Object_Declaration): Do required predicate
|
||
checks.
|
||
* sem_ch3.adb (Complete_Private_Subtype): Propagate predicates to full
|
||
view.
|
||
* sem_ch6.adb (Invariants_Or_Predicates_Present): New name for
|
||
Invariants_Present.
|
||
(Process_PPCs): Handle predicates generating post conditions
|
||
* sem_util.adb (Is_Partially_Initialized_Type): Add
|
||
Include_Null parameter.
|
||
* sem_util.ads (Is_Partially_Initialized_Type): Add
|
||
Include_Null parameter.
|
||
|
||
2010-10-22 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi (gnatelim): Add description for '--ignore' option
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_prag.adb (Check_First_Subtype): Specialize error messages for
|
||
case where argument is not a type.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch5.adb, par-ch4.adb, par-ch5.adb, sem_ch5.adb, sinfo.ads: Minor
|
||
reformatting.
|
||
|
||
2010-10-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* a-locale.adb: Minor code clean up.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch4.adb: Minor code reorganization and factoring.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* 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
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.ads, sem_util.adb, sem_aux.ads, sem_aux.adb
|
||
(Is_Generic_Formal): Moved from Sem_Util to Sem_Aux.
|
||
|
||
2010-10-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch5.adb (Expand_Iterator_Loop): New subprogram, implements new
|
||
iterator forms over arrays and containers, in loops and quantified
|
||
expressions.
|
||
* exp_util.adb (Insert_Actions): include N_Iterator_Specification.
|
||
* par-ch4.adb (P_Quantified_Expression): Handle iterator specifications.
|
||
* par-ch5.adb (P_Iterator_Specification): New subprogram. Modify
|
||
P_Iteration_Scheme to handle both loop forms.
|
||
* sem.adb: Handle N_Iterator_Specification.
|
||
* sem_ch5.adb, sem_ch5.ads (Analyze_Iterator_Specification): New
|
||
subprogram.
|
||
* sinfo.adb, sinfo.ads: New node N_Iterator_Specification.
|
||
N_Iteration_Scheme can now include an Iterator_Specification. Ditto
|
||
for N_Quantified_Expression.
|
||
* snames.ads-tmpl: Add names Cursor, Element, Element_Type, No_Element,
|
||
and Previous, to support iterators over predefined containers.
|
||
* sprint.adb: Handle N_Iterator_Specification.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_prag.adb, sem_ch12.adb, sem_util.adb, sem_util.ads
|
||
(Is_Generic_Formal): Move from body of Sem_Ch12 to Sem_Util.
|
||
(Check_Arg_Is_Local_Name): Fix check in the case of a pragma appearing
|
||
immediately after a library unit.
|
||
(Analyze_Pragma, case Preelaborable_Initialization): Pragma may apply to
|
||
a formal derived type.
|
||
|
||
2010-10-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* checks.adb (Apply_Predicate_Check): Remove attempt at optimization
|
||
when subtype is the same, caused legitimate checks to be missed.
|
||
* exp_ch13.adb (Build_Predicate_Function): Use Nearest_Ancestor to get
|
||
inheritance from right entity.
|
||
* freeze.adb (Freeze_Entity): Use Nearest_Ancestor to freeze in the
|
||
derived type case if the ancestor type has predicates.
|
||
* sem_aux.ads, sem_aux.adb (Nearest_Ancestor): New function.
|
||
* sem_prag.adb (Check_Enabled): Minor code reorganization.
|
||
|
||
2010-10-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/utils.c, gcc-interface/gigi.h: Minor reformatting.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* 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..
|
||
|
||
2010-10-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Has_Predicates): Flag is now on all entities
|
||
(simplifies code).
|
||
* exp_ch13.adb (Build_Predicate_Function): Output info msgs for
|
||
inheritance.
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): Make sure we have a
|
||
freeze node for entities for which a predicate is specified.
|
||
(Analyze_Aspect_Specifications): Avoid duplicate calls
|
||
* sem_ch3.adb (Analyze_Full_Type_Declaration): Remove attempt to avoid
|
||
duplicate calls to Analye_Aspect_Specifications.
|
||
|
||
2010-10-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* a-exextr.adb, atree.ads, freeze.adb: Minor reformatting.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-10-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb, exp_ch13.adb: Minor reformatting.
|
||
|
||
2010-10-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch3.adb (Check_Or_Process_Discriminant): Reject illegal attempt
|
||
to provide a tagged full view as the completion of an untagged partial
|
||
view if the partial view has a discriminant with default.
|
||
|
||
2010-10-21 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* checks.ads, checks.adb (Apply_Predicate_Check): New procedure
|
||
Minor code reorganization.
|
||
* einfo.adb (Has_Predicates): Fix assertion.
|
||
* exp_ch13.adb (Build_Predicate_Function): Move from Sem_Ch13 spec to
|
||
Exp_Ch13 body.
|
||
(Expand_N_Freeze_Entity): Call build predicate function.
|
||
* exp_ch4.adb (Expand_N_Type_Conversion): Add predicate check.
|
||
* exp_ch5.adb (Expand_N_Assignment_Statement): Add predicate check.
|
||
* exp_prag.adb (Expand_Pragma_Check): Use all lower case for name of
|
||
check.
|
||
* freeze.adb (Freeze_Entity): Move building of predicate function to
|
||
Exp_Ch13.
|
||
* sem_ch13.adb (Build_Predicate_Function): Move from Sem_Ch13 to
|
||
Exp_Ch13.
|
||
* sem_ch13.ads (Build_Predicate_Function): Move from Sem_Ch13 to
|
||
Exp_Ch13.
|
||
* sem_ch3.adb (Analyze_Declarations): Remove call to build predicate
|
||
function.
|
||
* sem_res.adb (Resolve_Actuals): Apply predicate check.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb: Replace Predicate_Procedure by
|
||
Predicate_Functions.
|
||
* exp_ch4.adb (Expand_N_In): Handle predicates.
|
||
* exp_util.ads, exp_util.adb (Make_Predicate_Call): New function.
|
||
(Make_Predicate_Check): New function.
|
||
* freeze.adb (Freee_Entity): Build predicate function if needed.
|
||
* sem_ch13.adb (Build_Predicate_Function): New procedure.
|
||
(Analyze_Aspect_Specifications): No third argument for Predicate pragma
|
||
built from Predicate aspect.
|
||
* sem_ch13.ads (Build_Predicate_Function): New procedure.
|
||
* sem_ch3.adb: Add handling for predicates.
|
||
* sem_eval.adb (Eval_Membership_Op): Never static if predicate
|
||
functions around.
|
||
* sem_prag.adb (Analye_Pragma, case Predicate): Does not take a third
|
||
argument.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb: Add handling of predicates.
|
||
Rework handling of invariants.
|
||
* exp_ch3.adb, exp_ch4.adb, exp_util.adb, sem_ch6.adb: Minor changes to
|
||
handing of invariants.
|
||
* par-prag.adb: Add dummy entry for pragma Predicate
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): Add processing for
|
||
Predicate aspects.
|
||
* sem_prag.adb: Add implementation of pragma Predicate.
|
||
* snames.ads-tmpl: Add entries for pragma Predicate.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* elists.adb: Minor reformatting.
|
||
|
||
2010-10-21 Geert Bosch <bosch@adacore.com>
|
||
|
||
* urealp.adb (UR_Write): Write hexadecimal constants with exponent 1 as
|
||
decimal constants, and write any others using the exponent notation.
|
||
Minor reformatting throughout
|
||
(Store_Ureal_Normalized): New function (minor code reorganization)
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, xeinfo.adb: Minor reformatting.
|
||
* s-stalib.ads: Minor comment fixes.
|
||
|
||
2010-10-21 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Enter_Overloaded_Entity): Refine warning message about
|
||
hiding, to remove noise warnings about hiding predefined operators.
|
||
|
||
2010-10-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-comlin.adb (Add_Switch): Fix handling of switches with no separator
|
||
when the parameter has length 1.
|
||
|
||
2010-10-21 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* sem_prag.adb (Set_Ravenscar_Profile): Enforce the restrictions of no
|
||
dependence on Ada.Execution_Time.Timers,
|
||
Ada.Execution_Time.Group_Budget, and
|
||
System.Multiprocessors.Dispatching_Domains which are part of the
|
||
Ravenscar Profile.
|
||
* impunit.adb (Non_Imp_File_Names_05): Add the file "a-etgrbu" to the
|
||
list of Ada 2005 files for package Ada.Execution_Time.Group_Budgets.
|
||
(Non_Imp_File_Names_12): Add the file "s-mudido" to the list of Ada 2012
|
||
files for package System.Mutiprocessors.Dispatching_Domains.
|
||
|
||
2010-10-21 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* ug_words, vms_data.ads: Define the VMS qualifier for -gnateE.
|
||
|
||
2010-10-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch3.ads (Process_Discriminants): Clarify cases where this is
|
||
called for a completion.
|
||
|
||
2010-10-21 Geert Bosch <bosch@adacore.com>
|
||
|
||
* uintp.ads: Expand image buffer to have enough room for 128-bit values
|
||
* urealp.ads (UR_Write): Write constants in base 16 in hexadecimal
|
||
notation; either as fixed point literal or in canonical radix 16
|
||
floating point form.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-cgaaso.ads, a-tags.ads, exp_ch3.adb, exp_attr.adb, exp_ch4.adb,
|
||
exp_ch3.ads, exp_ch7.adb, exp_ch9.adb, exp_disp.adb, exp_disp.ads,
|
||
exp_dist.adb, exp_util.adb, layout.adb, lib-xref.adb, lib.ads,
|
||
prep.adb, prj-strt.adb, s-ststop.adb, s-taskin.ads, s-tataat.ads,
|
||
sem_aggr.adb, sem_attr.adb, sem_ch12.adb, sem_ch3.adb, sem_ch4.adb,
|
||
sem_ch4.ads, sem_ch5.adb, sem_res.adb, sem_util.adb, einfo.adb,
|
||
g-sothco.ads, make.adb: Minor reformatting
|
||
|
||
2010-10-21 Vincent Celier <celier@adacore.com>
|
||
|
||
* vms_data.ads: Add new qualifiers /SRC_INFO= and
|
||
/UNCHECKED_SHARED_LIB_IMPORTS for GNAT COMPILE.
|
||
Correct qualifier /SRC_INFO= for GNAT MAKE
|
||
|
||
2010-10-21 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_aggr.adb (Flatten): An association for a subtype may be an
|
||
expanded name.
|
||
(Safe_Left_Hand_Side): An unchecked conversion is part of a safe
|
||
left-hand side if the expression is.
|
||
(Is_Safe_Index): new predicate
|
||
* exp_ch3.adb (Expand_Freeze_Enumeration_Type): Indicate that the
|
||
generated Rep_To_Pos function is a Pure_Function.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_rm.texi: Document Invariant pragma.
|
||
|
||
2010-10-21 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch5.adb: Update comment.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Build_Invariant_Procedure): Remove commented out code
|
||
for interfaces, since invariants are not allowed on interfaces in any
|
||
case.
|
||
|
||
2010-10-21 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_attr.adb (Resolve_Attribute): After replacing the range attribute
|
||
node with a range expression ensure that its evaluation will not have
|
||
side effects.
|
||
* exp_ch5.adb (Expand_Assign_Array): Propagate the Parent to the
|
||
unchecked conversion node generated to handle assignment of private
|
||
types. Required to allow climbing the subtree if Insert_Action is
|
||
invoked later.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch3.adb (P_Interface_Type_Definition): Allow for possibility of
|
||
aspect clause presence terminating the type definition.
|
||
|
||
2010-10-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb, exp_intr.adb, par-ch4.adb, scn.adb, sem_ch4.adb,
|
||
sem_res.adb, sem_util.adb, sinfo.ads, a-except-2005.adb: Minor
|
||
reformatting.
|
||
* snames.ads-tmpl: Add note on Name_Some (not a reserved keyword).
|
||
|
||
2010-10-21 Geert Bosch <bosch@adacore.com>
|
||
|
||
* ttypef.ads: Further cleanup of Safe_XXX float attributes.
|
||
|
||
2010-10-19 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb, exp_ch4.ads (Expand_Quantified_Expression): New procedure
|
||
* exp_util.adb (Insert_Actions): Include Quantified_Expression.
|
||
* expander.adb: Call Expand_Qualified_Expression.
|
||
* par.adb: New procedure P_Quantified_Expression. Make
|
||
P_Loop_Parameter_Specification global for use in quantified expressions.
|
||
* par-ch3.adb (P_Subtype_Mark_Resync): Allow "some" as an identifier if
|
||
version < Ada2012.
|
||
* par-ch4.adb: New procedure P_Quantified_Expression.
|
||
* par-ch5.adb: P_Loop_Parameter_Specification is now global.
|
||
* scans.adb, scans.ads: Introduce token Some. For now leave as
|
||
unreserved.
|
||
* scn.adb (Scan_Reserved_Identifier): For earlier versions of Ada,
|
||
treat Some as a regular identifier.
|
||
* sem.adb: Call Analyze_Quantified_Expression.
|
||
* sem_ch4.adb, sem_ch4.ads: New procedure Analyze_Quantified_Expression.
|
||
* sem_ch5.adb, sem_ch5.ads: Analyze_Iteration_Scheme is public, for use
|
||
in quantified expressions.
|
||
* sem_res.adb: New procedure Resolve_Qualified_Expression.
|
||
* sinfo.adb, sinfo.ads: New node N_Quantified_Expression
|
||
* snames.ads-tmpl: New name Some.
|
||
* sprint.adb: Output quantified_expression.
|
||
|
||
2010-10-19 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-exexda.adb: Minor reformatting
|
||
Minor code reorganization.
|
||
|
||
2010-10-19 Robert Dewar <dewar@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-10-19 Geert Bosch <bosch@adacore.com>
|
||
|
||
* ttypef.ads: Change VAXDF_Last to be -VAXDF_First, as type is
|
||
symmetric.
|
||
|
||
2010-10-19 Robert Dewar <dewar@adacore.com>
|
||
|
||
* atree.h (Field29): Fix incorrect definition.
|
||
* einfo.adb (Invariant_Procedure): New attribute
|
||
(Has_Invariants): New flag
|
||
(Has_Inheritable_Invariants): New flag
|
||
(OK_To_Reference): New flag
|
||
Minor code reorganization (use Next_Rep_Item function)
|
||
* einfo.ads (Invariant_Procedure): New attribute
|
||
(Has_Invariants): New flag
|
||
(Has_Inheritable_Invariants): New flag
|
||
(OK_To_Reference): New flag
|
||
* exp_ch3.adb (Expand_N_Object_Declaration): Add check for invariant
|
||
* exp_ch4.adb (Expand_N_Type_Conversion): Check invariant on type
|
||
conversion. Minor reformatting.
|
||
* exp_util.ads, exp_util.adb (Make_Invariant_Call): New procedure.
|
||
* opt.ads (List_Inherited_Aspects): New name for List_Inherited_Pre_Post
|
||
* par-prag.adb: Add dummy entry for pragma Invariant.
|
||
* sem_ch13.adb (Build_Invariant_Procedure): New procedure
|
||
(Analyze_Aspect_Specification): Add support for Invariant aspect
|
||
* sem_ch13.ads (Build_Invariant_Procedure): New procedure
|
||
* sem_ch3.adb (Build_Derived_Type): Propagate invariant information
|
||
(Process_Full_View): Deal with invariants, building invariant procedure
|
||
Minor reformatting
|
||
* sem_ch6.adb (Process_PPCs): Add processing of invariants
|
||
* sem_ch7.adb (Analyze_Package_Specification): Build invariant
|
||
procedures.
|
||
* sem_prag.adb: Implement pragma Invariant.
|
||
* sem_res.adb (Resolve_Entity_Name): Allow type reference if
|
||
OK_To_Reference set.
|
||
* sem_warn.adb (List_Inherited_Aspects): New name for
|
||
List_Inherited_Pre_Post.
|
||
* snames.ads-tmpl: Add entries for pragma Invariant.
|
||
* treepr.adb (Print_Entity_Information): Add handling of Field29.
|
||
* usage.adb: Warning .l/.L applies to invariant as well as pre/post.
|
||
|
||
2010-10-19 Javier Miranda <miranda@adacore.com>
|
||
|
||
* par-ch4.adb: Update documentation of Ada 2012 syntax rules for
|
||
membership test.
|
||
|
||
2010-10-19 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_attr.adb (Eval_Attribute): Implement Max_Alignment_For_Allocation
|
||
attribute.
|
||
* exp_attr.adb (Expand_N_Attribute_Reference): Add
|
||
Attribute_Max_Alignment_For_Allocation to the case statement.
|
||
* snames.ads-tmpl (Name_Max_Alignment_For_Allocation,
|
||
Attribute_Max_Alignment_For_Allocation): New attribute name.
|
||
|
||
2010-10-19 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (OK_For_Limited_Init_In_05): a call to an access to
|
||
parameterless function appears syntactically as an explicit dereference.
|
||
|
||
2010-10-19 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch8.adb, sem_ch12.adb, opt.ads, sem_ch6.adb, sem_res.adb,
|
||
i-cexten.ads, exp_disp.adb, exp_ch4.adb, exp_ch9.adb: Minor reformatting
|
||
|
||
2010-10-19 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_util.adb (Collect_Primitive_Operations): A function with an
|
||
anonymous access result designating T is a primitive operation of T.
|
||
|
||
2010-10-19 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* init.c: On Alpha/VMS, only adjust PC for HPARITH.
|
||
|
||
2010-10-19 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* sem_attr.adb (Eval_Attribute): Handle Attribute_Ref, which can be
|
||
evaluated on VMS.
|
||
|
||
2010-10-19 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Check_Generic_Child_Unit): Handle properly the case of
|
||
an instantiation of a renaming of the implicit generic child that
|
||
appears within an instance of its parent.
|
||
|
||
2010-10-19 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch9.adb: Minor reformatting.
|
||
* einfo.adb, einfo.ads, atree.adb, atree.ads, exp_dist.adb, atree.h:
|
||
(Referenced_Object): Remove unused entity attribute.
|
||
(Direct_Primitive_Operations): Move to Elist10, this is set for all
|
||
tagged types, including synchronous ones, so can't use field15 which is
|
||
used as Storage_Size_Variable for task types and Entry_Bodies_Array for
|
||
protected types.
|
||
(Add_RACW_Primitive_Declarations_And_Bodies): Remove bogus guard
|
||
against Concurrent_Types (we must handle the case of a RACW designating
|
||
a class-wide private synchronous type).
|
||
Use Direct_Primitive_Operations, not Primitive_Operations, since we
|
||
really want the former.
|
||
|
||
2010-10-19 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_ch8.adb (Pop_Scope): Change "return;" to "raise Program_Error;".
|
||
|
||
2010-10-19 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_Set_Membership.Make_Cond): Add missing support
|
||
for N_Range nodes.
|
||
|
||
2010-10-19 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* einfo.ads, atree.ads: Minor comment fixes.
|
||
|
||
2010-10-18 Bob Duff <duff@adacore.com>
|
||
|
||
* sinfo.ads, sinfo.adb: Modify comment about adding fields to be more
|
||
correct, and to be in a more convenient order.
|
||
(Default_Storage_Pool): New field of N_Compilation_Unit_Aux, for
|
||
recording the Default_Storage_Pool for a parent library unit.
|
||
* einfo.ads (Etype): Document the case in which Etype can be Empty.
|
||
* sem_prag.adb (Pragma_Default_Storage_Pool): Analyze the new
|
||
Default_Storage_Pool pragma.
|
||
* sem.ads (Save_Default_Storage_Pool): Save area for push/pop scopes.
|
||
* gnat_ugn.texi: Document Default_Storage_Pool as a new configuration
|
||
pragma.
|
||
* freeze.adb (Freeze_Entity): When freezing an access type, take into
|
||
account any Default_Storage_Pool pragma that applies. We have to do
|
||
this at the freezing point, because up until that point, a Storage_Pool
|
||
or Storage_Size clause could occur, which should override the
|
||
Default_Storage_Pool.
|
||
* par-prag.adb: Add this pragma to the list of pragmas handled entirely
|
||
during semantics.
|
||
* sem_ch8.adb (Push_Scope, Pop_Scope): Save and restore the
|
||
Default_Storage_Pool information.
|
||
* opt.ads (Default_Pool, Default_Pool_Config): New globals for recording
|
||
currently-applicable Default_Storage_Pool pragmas.
|
||
* opt.adb: Save/restore the globals as appropriate.
|
||
* snames.ads-tmpl (Name_Default_Storage_Pool,
|
||
Pragma_Default_Storage_Pool): New pragma name.
|
||
|
||
2010-10-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Switches_Of): Put the spec and body suffix in canonical
|
||
case.
|
||
|
||
2010-10-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): If subprogram is at the
|
||
library level, the pre/postconditions must be treated as global
|
||
declarations, i.e. placed on the Aux_Decl nodes of the compilation unit.
|
||
* freeze.adb (Freeze_Expression): If the expression is at library level
|
||
there is no enclosing record to check.
|
||
|
||
2010-10-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.ads (Find_Type_Name): Add documentation.
|
||
* sem_ch3.adb (Analyze_Full_Type_Declaration): Code cleanup because the
|
||
propagation of the class-wide entity is now done by routine
|
||
Find_Type_Name to factorize this code.
|
||
(Analyze_Private_Extension_Declaration): Handle private type that
|
||
completes an incomplete type.
|
||
(Tag_Mismatch): Add error message for tag mismatch in a private type
|
||
declaration that completes an incomplete type.
|
||
(Find_Type_Name): Handle completion of incomplete type by means of
|
||
a private declaration. Generate an error if a tagged incomplete type
|
||
is completed by an untagged private type.
|
||
* sem_ch7.adb (New_Private_Type): Handle private type that completes an
|
||
incomplete type.
|
||
* einfo.ads (Full_View): Add documentation.
|
||
|
||
2010-10-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Analyze_Formal_Package_Declaration): If the package is
|
||
a renaming, generate a reference for it before analyzing the renamed
|
||
entity, to prevent spurious warnings.
|
||
|
||
2010-10-18 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb: Minor reformatting.
|
||
* gnat_ugn.texi, ug_words: Add missing entries, fix typos.
|
||
|
||
2010-10-18 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-comlin.adb (Is_In_Config): When the switch accepts either a space
|
||
or equal, we output an equal every time.
|
||
|
||
2010-10-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Entry_Call): Handle call to an entry family
|
||
member when pre/post conditions are present.
|
||
* exp_ch9.adb (Build_PPC_Wrapper): The PPC_Wrapper for an entry family
|
||
includes an index parameter, and the name of the enclosed entry call is
|
||
an indexed component.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb: Minor reformatting.
|
||
|
||
2010-10-18 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* 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.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sinfo.ads, sinfo.adb: Change Has_Pragma_CPU to Flag14 (Flag10 is
|
||
standard field).
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-stausa.adb, s-taprop-linux.adb, s-taprop-mingw.adb, s-tassta.ads:
|
||
Minor reformatting.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_strm.adb (Build_Elementary_Input_Call): Check
|
||
No_Default_Stream_Attributes.
|
||
(Build_Elementary_Write_Call): Check No_Default_Stream_Attributes
|
||
* s-rident.ads: Add restriction No_Default_Stream_Attributes
|
||
Put restriction No_Allocators_After_Elaboration in alpha order
|
||
|
||
2010-10-18 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Add field corresponding
|
||
to the affinity when expanding the task declaration.
|
||
(Make_Task_Create_Call): Add the affinity parameter to the call to
|
||
create task.
|
||
* sem_prag.adb (Analyze_Pragma): Add the analysis for pragma CPU,
|
||
taking into account the case when it applies to a subprogram (only for
|
||
main and with static expression) or to a task.
|
||
* par_prag.adb:(Prag): Make pragma CPU a valid one.
|
||
* snames.ads-tmpl (Name_uCPU, Name_CPU): Add these new name identifiers
|
||
used by the expander for handling the affinity parameter when creating
|
||
a task.
|
||
(Pragma_Id): Add Pragma_CPU as a valid one.
|
||
* rtsfind.ads (RTU_Id): Make System_Multiprocessors accesible.
|
||
(RE_Id, RE_Unit_Table): Make the entities RE_CPU_Range and
|
||
RE_Unspecified_CPU visible.
|
||
* sinfo.ads, sinfo.adb (Has_Pragma_CPU, Set_Has_Pragma_CPU): Add these
|
||
two subprograms to set/get the flag indicating whether there is a
|
||
pragma CPU which applies to the entity.
|
||
* lib.ads, lib.adb (Unit_Record, Default_Main_CPU, Main_CPU,
|
||
Set_Main_CPU): Add the field Main_CPU to Unit_Record to store the value
|
||
of the affinity associated to the main subprogram (if any).
|
||
Default_Main_CPU is used when no affinity is set. Subprograms
|
||
Set_Main_CPU and Main_CPU are added to set/get the affinity of the main
|
||
subprogram.
|
||
* ali.ads, ali.adb (ALIs_Record): Add field Main_CPU to contain the
|
||
value of the affinity of the main subprogram.
|
||
(Scan_ALI): Get the affinity of the main subprogram (encoded as C=XX in
|
||
the M line).
|
||
* lib-writ.ads, lib-writ.adb (M_Parameters): Encode the affinity of the
|
||
main subprogram in the M (main) line using C=XX.
|
||
* lib-load.adb (Create_Dummy_Package_Unit, Load_Main_Source,
|
||
Load_Unit): Add new field Main_CPU.
|
||
* bindgen.adb (Gen_Adainit_Ada, Gen_Adainit_C): Add the code to pass
|
||
the affinity of the main subprogram to the run time.
|
||
* s-taskin.ads (Common_ATCB): Add the field Base_CPU to store the
|
||
affinity.
|
||
(Unspecified_CPU): Add this constant to identify the case when no
|
||
affinity is set for tasks.
|
||
* s-taskin.adb (Initialize_ATCB): Store the value coming from pragma
|
||
CPU in the common part of the ATCB.
|
||
(Initialize): Store the value coming from pragma CPU (for the
|
||
environment task) in the common part of the ATCB.
|
||
* s-tassta.ads, s-tassta.adb (Create_Task): Add the affinity specified
|
||
by pragma CPU to the ATCB.
|
||
* s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Add the affinity
|
||
specified by pragma CPU to the ATCB.
|
||
* s-tporft.adb (Register_Foreign_Thread): Add the new affinity
|
||
parameter to the call to Initialize_ATCB.
|
||
* s-taprop-linux.adb (Create_Task): Change the attributes of the thread
|
||
to include the task affinity before creation. Additionally, the
|
||
affinity selected with Task_Info is also enforced changing the
|
||
attributes at task creation time, instead of changing it after creation.
|
||
(Initialize): Change the affinity of the environment task if required
|
||
by a pragma CPU.
|
||
* s-osinte-linux.ads (pthread_setaffinity_np): Instead of using a
|
||
wrapper to check whether the function is available or not, use a weak
|
||
symbol.
|
||
(pthread_attr_setaffinity_np): Add the import of this function which is
|
||
used to change the affinity in the attributes used to create a thread.
|
||
* adaint.c (__gnat_pthread_attr_setaffinity_np): Remove this wrapper.
|
||
It was used to check whether the pthread function was available or not,
|
||
but the use of a weak symbol handles this situation in a cleaner way.
|
||
* s-taprop-mingw.adb (Create_Task, Initialize): Change the affinity of
|
||
tasks (including the environment task) if required by a pragma CPU.
|
||
* s-taprop-solaris.adb (Enter_Task): Change the affinity of tasks
|
||
(including the environment task) if required by a pragma CPU.
|
||
* s-taprop-vxworks.adb (Create_Task, Initialize): Change the affinity
|
||
of tasks (including the environment task) if required by a pragma CPU.
|
||
* init.c (__gl_main_cpu): Make this value visible to the run time. It
|
||
will pass the affinity of the environment task.
|
||
|
||
2010-10-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* einfo.adb (Direct_Primitive_Operations): Complete assertion.
|
||
|
||
2010-10-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.ads (Source_Data): New Boolean flag In_The_Queue.
|
||
|
||
2010-10-18 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* s-stausa.ads: Add the Top parameter to Initialize_Analyzer.
|
||
* s-stausa.adb: Use the top parameter. In Fill_Stack, use the
|
||
stack top if known.
|
||
* s-tassta.adb (Task_Wrapper): Call Initialize_Analyzer after Enter_Task
|
||
so that Pri_Stack_Info.Limit can be set and used.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads: Minor reformatting.
|
||
* sem_res.adb (Resolve_Allocator): Add test for violating
|
||
No_Anonymous_Allocators.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* prj-nmsc.adb, prj.adb, sem_res.adb: Minor reformatting.
|
||
|
||
2010-10-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Insert_Explicit_Dereference): If operand is a selected
|
||
component, we generate a reference to the ultimate prefix when it is an
|
||
entity name. We must place the reference on the identifier for that
|
||
prefix, and not on the operand itself, to prevent spurious extra
|
||
references in the ali file.
|
||
|
||
2010-10-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* projects.texi: Add documentation for attribute Ignore_Source_Sub_Dirs
|
||
|
||
2010-10-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb: New attribute PPC_Wrapper for entries and entry
|
||
families. Denotes a procedure that performs pre/postcondition checks
|
||
and then performs the entry call.
|
||
* sem_res.adb (Resolve_Entry_Call): If the entry has
|
||
pre/postconditions, replace call with a call to the PPC_Wrapper of the
|
||
entry.
|
||
* exp_ch9.adb (Build_PPC_Wrapper): new procedure.
|
||
(Expand_N_Entry_Declaration, Expand_N_Protected_Type_Declaration): call
|
||
Build_PPC_Wrapper for all entries in task and protected definitions.
|
||
|
||
2010-10-18 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* init.c: Add __gnat_set_stack_guard_page and __gnat_set_stack_limit.
|
||
Implement stack limitation on VMS.
|
||
Minor reformatting.
|
||
|
||
2010-10-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.adb (Is_Compilable): Do not modify Source.Compilable until the
|
||
source record has been initialized.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.adb: Minor code reorganization (Primitive_Operations is a
|
||
synthesized attribute routine and was in the wrong place).
|
||
|
||
2010-10-18 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* init.c: Indentation, and minor changes to more closely follow GNU
|
||
style rules. Make more variable statics.
|
||
|
||
2010-10-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.adb (Is_Compilable): On first call for a source, cache value in
|
||
component Compilable.
|
||
* prj.ads (Source_Data): New component Compilable, to cache the value
|
||
returned by function Is_Compilable.
|
||
|
||
2010-10-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-attr.adb: New project level attribute Ignore_Source_Sub_Dirs.
|
||
* prj-nmsc.adb (Expand_Subdirectory_Pattern): New string list parameter
|
||
Ignore.
|
||
(Recursive_Find_Dirs): Do not consider subdirectories listed in Ignore.
|
||
(Get_Directories): Call Find_Source_Dirs with the string list
|
||
indicated by attribute Ignore_Source_Sub_Dirs.
|
||
* snames.ads-tmpl: New standard name Ignore_Source_Sub_Dirs.
|
||
|
||
2010-10-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Primitive_Operations): New synthesized
|
||
attribute.
|
||
(Direct_Primitive_Operations): Renaming of old Primitive_Operations.
|
||
(Set_Direct_Primitive_Operations): Renaming of old
|
||
Set_Primitive_Operations. Update documentation
|
||
* sem_ch3.adb, exp_util.adb, sem_ch7.adb, sem_ch8.adb, exp_ch3.adb:
|
||
Replace occurrences of Set_Primitive_Operations by
|
||
Set_Direct_Primitive_Operations.
|
||
* sem_cat.adb (Validate_RACW_Primitives): No action needed for tagged
|
||
concurrent types.
|
||
* exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): Do not
|
||
process primitives of concurrent types.
|
||
* lib-xref.adb (Generate_Prim_Op_References): Minor code cleanup.
|
||
|
||
2010-10-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_N_Subprogram_Declaration): Use Freeze_Before.
|
||
(Expand_Protected_Object_Reference): Likewise.
|
||
* sem_attr.adb (Resolve_Attribute): Likewise.
|
||
* sem_ch3.adb (Analyze_Subtype_Declaration): Likewise.
|
||
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Likewise.
|
||
|
||
2010-10-18 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* g-comlin.adb (Get_Switches): Prevent dereferencing null Config.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* aspects.ads, aspects.adb: Add entries for aspects
|
||
Read/Write/Input/Output.
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): Add processing for
|
||
handling aspects Read/Write/Input/Output.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.adb (Note_Possible_Modification): Do not give warning for
|
||
use of pragma Unmodified unless we are sure this is a modification.
|
||
|
||
2010-10-18 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* sysdep.c: Add __gnat_get_stack_bounds.
|
||
* s-taprop-mingw.adb Call __gnat_get_stack_bounds to set Pri_Stack_Info.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-assert.ads: Fix bad name in header.
|
||
* sem_ch4.adb, sem_ch6.adb, sem_ch7.adb, sem_ch10.adb: Minor
|
||
reformatting.
|
||
* exp_aggr.adb: Fix typo in comment.
|
||
|
||
2010-10-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_util.adb (Side_Effect_Free): Code clean up.
|
||
|
||
2010-10-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Is_Primitive_Operator_In_Use): Renamed from
|
||
Is_Primitive_Operator. When ending the scope of a use package scope, a
|
||
primitive operator remains in use if the base type has a current use
|
||
(type) clause.
|
||
|
||
2010-10-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* einfo.ads (Is_Dynamic_Support): Add missing support for limited
|
||
private types whose full-view is a task type.
|
||
* sem_util.adb (Enclosing_Subprogram): Add missing support for limited
|
||
private types whose full-view is a task type.
|
||
* exp_ch7.adb (Find_Final_List): Minor code cleanup replacing code by
|
||
function Nearest_Dynamic_Scope which provides the needed functionality.
|
||
|
||
2010-10-18 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_prag.adb (Set_Exported): Do not generate error when exporting a
|
||
variable with an address clause in codepeer mode.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-trasym-vms-ia64.adb: Minor reformatting.
|
||
|
||
2010-10-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_type.adb (Covers): If either argument is Standard_Void_Type and
|
||
the other isn't, return False early.
|
||
|
||
2010-10-18 Ed Falis <falis@adacore.com>
|
||
|
||
* s-vxwext-rtp.ads, s-vxext-rtp.adb: Adapt for missing APIs for RTPs in
|
||
VxWorks Cert.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_disp.ads: Minor comment update.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Spec_PPC_List): Is now present in Entries
|
||
* sem_ch3.adb (Analyze_Declarations): Add processing for delaying
|
||
visibility analysis of precondition and postcondition pragmas (and
|
||
Pre/Post aspects).
|
||
* sem_ch6.adb (Process_PPCs): Add handling of inherited Pre'Class
|
||
aspects.
|
||
* sem_ch7.adb (Analyze_Package_Specification): Remove special handling
|
||
of pre/post conditions (no longer needed).
|
||
* sem_disp.adb (Inherit_Subprograms): Deal with interface case.
|
||
* sem_prag.adb (Analyze_PPC_In_Decl_Part): Remove analysis of message
|
||
argument, since this is now done in the main processing for
|
||
pre/postcondition pragmas when they are first seen.
|
||
(Chain_PPC): Pre'Class and Post'Class now handled properly
|
||
(Chain_PPC): Handle Pre/Post aspects for entries
|
||
(Check_Precondition_Postcondition): Handle entry declaration case
|
||
(Check_Precondition_Postcondition): Handle delay of visibility analysis
|
||
(Check_Precondition_Postcondition): Preanalyze message argument if
|
||
present.
|
||
|
||
2010-10-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-trasym-vms-ia64.adb, prj-nmsc.adb, prj.ads: Minor reformatting.
|
||
|
||
2010-10-14 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set
|
||
TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
|
||
* gcc-interface/trans.c (Identifier_to_gnu): Set TREE_THIS_NOTRAP on
|
||
the INDIRECT_REF node built for objects used by reference.
|
||
* gcc-interface/utils2.c (build_binary_op): Add short-circuit for
|
||
constant result. Set TREE_THIS_NOTRAP on ARRAY_REF and ARRAY_RANGE_REF.
|
||
(gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag.
|
||
|
||
2010-10-13 Richard Henderson <rth@redhat.com>
|
||
|
||
* gcc-interface/misc.c (gnat_eh_personality): Update call to
|
||
build_personality_function.
|
||
* raise-gcc.c (PERSONALITY_FUNCTION): Change to match other languages;
|
||
use__gnat_personality_{v,sj}0.
|
||
|
||
2010-10-12 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Add_Source): Put source in hash table Source_Files_HT
|
||
(Process_Exceptions_File_Based): Use hash table Source_Files_HT instead
|
||
of iterating through all sources of the project.
|
||
* prj.adb (Free): Reset hash table Source_Files_HT
|
||
(Reset): Reset hash table Source_Files_HT
|
||
* prj.ads (Source_Data): New component Next_With_File_Name
|
||
(Source_Files_Htable): New hash table
|
||
(Project_Tree_Data): New component Source_Files_HT
|
||
|
||
2010-10-12 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* g-trasym-vms-ia64.adb: Use the documented API.
|
||
* gcc-interface/Makefile.in: Always set NO_REORDER_ADAFLAGS.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-10-12 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* rtsfind.ads, exp_dist.adb, exp_dist.ads (Build_General_Calling_Stubs,
|
||
PolyORB case): Request is now a controlled type: we can declare the
|
||
request on the stack, and we do not need explicit cleanup actions
|
||
anymore.
|
||
|
||
2010-10-12 Bob Duff <duff@adacore.com>
|
||
|
||
* s-rident.ads (Profile_Info): This variable is now constant.
|
||
|
||
2010-10-12 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-comlin.adb, g-comlin.ads (Define_Switch): Put back (unused)
|
||
parameter Separator for backward compatibility.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch9.adb, par-ch9.adb, impunit.adb: Minor reformatting.
|
||
|
||
2010-10-12 Vincent Celier <celier@adacore.com>
|
||
|
||
* debug.adb: Put detailed documentation for gnatmake switch -dm.
|
||
|
||
2010-10-12 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnat1drv.adb: When the compiler is invoked for a spec that needs aw
|
||
body, do not generate an ALI file if neither -gnatc nor -gnatQ is used.
|
||
|
||
2010-10-12 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* g-comlin.adb (Foreach_Switch): Make this procedure generic to avoid
|
||
using 'Access.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: Add comment.
|
||
* gnatcmd.adb, sem_ch6.adb, switch-m.adb: Minor reformatting.
|
||
|
||
2010-10-12 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_util.adb (Side_Effect_Free): Return true for object renaming
|
||
declarations that were previously generated by Remove_Side_Effects.
|
||
|
||
2010-10-12 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* xref_lib.adb (Get_Full_Type): Display "private variable" instead of
|
||
"???" when an entity is defined as "*" in the ALI file.
|
||
* g-comlin.ads, g-comlin.adb: Fix handling of null parameters.
|
||
Minor reformatting.
|
||
|
||
2010-10-12 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-comlin.adb, g-comlin.ads (Display_Help, Getopt, Current_Section,
|
||
Set_Usage): New subprograms.
|
||
(Define_Switch): Change profile to add support for help messages and
|
||
long switches.
|
||
|
||
2010-10-12 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch6.adb (New_Overloaded_Entity): Add missing decoration of
|
||
attribute Overridden_Operation in predefined dispatching primitives.
|
||
|
||
2010-10-12 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-comlin.adb, g-comlin.ads (Add_Switch): Raise an exception when a
|
||
command line configuration exists and we specify an invalid section.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb (Process_PPCs): Fix error in inheriting Pre'Class when no
|
||
exception messages are generated.
|
||
(Process_PPCs): Fix error in inheriting Pre'Class.
|
||
|
||
2010-10-12 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* gnatcmd.adb: Use response file for GNATstack.
|
||
(Check_Files): Pass the list of ci files for GNATstack using a response
|
||
file to avoid problems with command line length.
|
||
Factor out the code handling response file into a new procedure named
|
||
Add_To_Response_File.
|
||
|
||
2010-10-12 Vincent Celier <celier@adacore.com>
|
||
|
||
* debug.adb: For gnatmake, document the meaning of -dm
|
||
* make.adb (Gnatmake): If -dm is used, indicate the maximum number of
|
||
simultaneous compilations.
|
||
* switch-m.adb (Scan_Make_Switches): Allow -j0, meaning as many
|
||
simultaneous compilations as the number of processors.
|
||
|
||
2010-10-12 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTIONS_H)
|
||
instead of options.h.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_rm.texi: Clarify that 'Old can be used in preconditions and
|
||
postcondition pragmas.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.ads, erroutc.adb: The # insertion now handles from in place of
|
||
at.
|
||
* exp_prag.adb (Expand_Pragma_Check): Suppress generated default
|
||
message if new switch Exception_Locations_Suppressed is set.
|
||
(Expand_Pragma_Check): Revised wording for default message for case
|
||
of precondition or postcondition.
|
||
* namet.ads, namet.adb (Build_Location_String): New procedure.
|
||
* opt.ads (List_Inherited_Pre_Post): New flag.
|
||
* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Add call to
|
||
list inherited pre/post aspects.
|
||
* sem_ch13.adb (Analyze_Aspect_Specification): Improve generation of
|
||
messages for precondition/postcondition cases.
|
||
* sem_ch6.adb (Process_PPCs): General cleanup, and list inherited PPC's
|
||
if flag List_Inherited_Pre_Post is set True.
|
||
(Process_PPCs): Add initial handling for inherited preconditions
|
||
(List_Inherited_Pre_Post_Aspects): New procedure
|
||
* sem_ch6.ads (List_Inherited_Pre_Post_Aspects): New procedure
|
||
* sem_disp.adb (Inherited_Subprograms): New function
|
||
* sem_disp.ads (Inherited_Subprograms): New function
|
||
* sem_prag.adb (Check_Duplicate_Pragma): Clean up handling of
|
||
pre/postcondition.
|
||
(Check_Precondition_Postcondition): Check for inherited aspects
|
||
* sem_warn.adb: Process -gnatw.l/w.L setting List_Inherited_Pre_Post
|
||
* sinfo.ads, sinfo.adb (Split_PPC): New flag.
|
||
* sinput.ads, sinput.adb (Build_Location_String): New function.
|
||
* usage.adb: Add line for -gnatw.l/-gnatw.L
|
||
|
||
2010-10-12 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_util.adb (Remove_Side_Effects): Remove wrong code.
|
||
|
||
2010-10-12 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* xref_lib.adb: Add handling of j/J letters.
|
||
|
||
2010-10-12 Pascal Obry <obry@adacore.com>
|
||
|
||
* adaint.c (__gnat_number_of_cpus): Add implementation for Windows.
|
||
|
||
2010-10-12 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* make.adb (Globalize): New procedure.
|
||
(Compile): Set Do_Codepeer_Globalize_Step when -gnatC is used.
|
||
(Gnatmake): Call Globalize when needed.
|
||
(Process_Restrictions_Or_Restriction_Warnings): Ignore Restrictions
|
||
pragmas in CodePeer mode.
|
||
(Adjust_Global_Switches): Set No_Initialize_Scalars in CodePeer mode,
|
||
to generate simpler and consistent code.
|
||
|
||
2010-10-12 Bob Duff <duff@adacore.com>
|
||
|
||
* exp_util.adb (Remove_Side_Effects): Disable previous change,
|
||
can cause side effects to be duplicated.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb (Process_PPCs): Handle inherited postconditions.
|
||
|
||
2010-10-12 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_disp.adb (Set_All_DT_Position): Disable emit error message on
|
||
abstract inherited private operation in CodePeer mode.
|
||
|
||
2010-10-12 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* a-exetim.ads: Minor reformatting.
|
||
* g-socket.ads (Port_Type): Better definition corresponding to the
|
||
actual standard range.
|
||
* exp_ch5.adb: Add comment.
|
||
* sem_aux.adb: Minor reformatting.
|
||
|
||
2010-10-12 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Copy_Generic_Node): If node is a string literal, remove
|
||
string_literal_subtype so that a new one can be constructed in the
|
||
scope of the instance.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch9.adb (Has_Pragma_Priority): New name for Has_Priority_Pragma
|
||
* gnat_rm.texi (pragma Suppress_All): Document new placement rules
|
||
* par-prag.adb (P_Pragma, case Suppress_All): Set
|
||
Has_Pragma_Suppress_All flag.
|
||
* sem_prag.adb (Has_Pragma_Priority): New name for Has_Priority_Pragma
|
||
(Analyze_Pragma, case Suppress_All): Remove placement check
|
||
(Process_Compilation_Unit_Pragmas): Use Has_Pragma_Suppress_All flag
|
||
* sem_prag.ads (Process_Compilation_Unit_Pragmas): Update documentation
|
||
* sinfo.adb (Has_Pragma_Suppress_All): New flag
|
||
(Has_Pragma_Priority): New name for Has_Priority_Pragma
|
||
* sinfo.ads (Has_Pragma_Suppress_All): New flag
|
||
(Has_Pragma_Priority): New name for Has_Priority_Pragma
|
||
|
||
2010-10-12 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* lib-xref.ads: Mark j/J as reserved for C++ classes.
|
||
|
||
2010-10-12 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* a-exetim-default.ads, a-exetim-posix.adb: New.
|
||
* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for linux): Use the
|
||
POSIX Realtime support to implement CPU clocks.
|
||
(EXTRA_GNATRTL_TASKING_OBJS for linux): Add the a-exetim.o object
|
||
to the tasking library.
|
||
(THREADSLIB): Make the POSIX.1b Realtime Extensions library (librt)
|
||
available for shared libraries.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): For Pre/Post, break
|
||
apart expressions with AND THEN clauses into separate pragmas.
|
||
* sinput.ads, sinput.adab (Get_Logical_Line_Number_Img): New function.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch13.adb (P_Aspect_Specifications): Fix handling of 'Class
|
||
aspects.
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): Fix bad Sloc on aspects
|
||
* sem_prag.adb (Fix_Error): Only change pragma names for pragmas from
|
||
aspects.
|
||
(Check_Optional_Identifier): Handle case of direct arguments
|
||
(Chain_PPC): Test for abstract case, giving appropriate messages
|
||
* sinfo.ads, sinfo.adb (Class_Present): Allowed on N_Pragma node
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-endh.adb (Check_End): Don't swallow semicolon or aspects after
|
||
END RECORD.
|
||
* sem_attr.adb (Eval_Attribute): Code clean up.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch12.adb (P_Formal_Private_Type_Definition): Improve error
|
||
messages and recovery for case of out of order Abstract/Tagged/Private
|
||
keywords.
|
||
* par-ch3.adb (P_Type_Declaration): Improve error messages and recovery
|
||
for case of out of order Abstract/Tagged/Private keywords.
|
||
|
||
2010-10-12 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* inline.adb (Analyze_Inlined_Bodies): Restrict previous change to case
|
||
where child unit is main unit of compilation.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* aspects.ads, aspects.adb (Move_Aspects): New procedure.
|
||
* atree.ads, atree.adb: (New_Copy): Does not copy aspect specifications
|
||
* sinfo.ads, par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb,
|
||
par-endh.adb, par-ch13.adb, par-ch12.adb: Modify grammar to include
|
||
aspect specifications.
|
||
Recognize aspect specifications for all cases
|
||
* par.adb: Recognize aspect specifications for all cases
|
||
* sem_ch12.ads, sem_ch12.adb (Copy_Generic_Node): Copies aspect
|
||
specifications.
|
||
* sem_ch3.adb (Analyze_Subtype_Declaration): Improve patch to freeze
|
||
generic actual types (was missing some guards before).
|
||
* sem_ch9.adb (Analyze_Single_Protected_Declaration): Copy aspects to
|
||
generated object
|
||
(Analyze_Single_Task_Declaration): Copy aspects to generated object
|
||
|
||
2010-10-12 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* usage.adb (usage): Adjust line for -gnatn switch.
|
||
|
||
2010-10-12 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_attr.adb (Eval_Attribute): Only leave change active for aspect
|
||
spec case.
|
||
|
||
2010-10-12 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Declaration): If this is a
|
||
declaration of a null procedure resolve the types of the profile of the
|
||
generated null body now.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: Remove d.A flag to delay address clause (not needed any
|
||
more). Add d.A flag to enable tree read/write of aspect spec hash table
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): Properly delay address
|
||
clause.
|
||
(Rep_Item_Too_Late): No need for special processing for delayed rep
|
||
items (and it caused difficulties in the address case).
|
||
* tree_gen.adb: Only write aspect spec hash table if -gnatd.A is set
|
||
* tree_in.adb: Only write aspect spec hash table if -gnatd.A is set
|
||
|
||
2010-10-11 Pat Rogers <rogers@adacore.com>
|
||
|
||
* gnat_ugn.texi: Minor editing.
|
||
|
||
2010-10-11 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/utils2.c (gnat_build_constructor): Use VEC_qsort.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-htable.ads (Get_First): New procedural version for Simple_HTable
|
||
(Get_Next): New procedural version for Simple_HTable
|
||
* s-htable.adb (Get_First): New procedural version for Simple_HTable
|
||
(Get_Next): New procedural version for Simple_HTable
|
||
* s-htable.ads (Get_First): New procedural version for Simple_HTable
|
||
(Get_Next): New procedural version for Simple_HTable
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aggr.adb (Propagate_Discriminants): To gather the components of a
|
||
variant part, use the association list of the subaggregate, which
|
||
already includes the values of the needed discriminants.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* aspects.ads, aspects.adb: Changes to accomodate aspect delay
|
||
(Tree_Write): New procedure.
|
||
* atree.ads, atree.adb: Flag3 is now Has_Aspects and applies to all
|
||
nodes.
|
||
* atree.h: Flag3 is now Has_Aspects and applies to all nodes
|
||
* debug.adb: Add debug flag gnatd.A
|
||
* einfo.adb (Has_Delayed_Aspects): New flag
|
||
(Get_Rep_Item_For_Entity): New function
|
||
* einfo.ads (Has_Delayed_Aspects): New flag
|
||
(Get_Rep_Item_For_Entity): New function
|
||
* exp_ch13.adb (Expand_N_Freeze_Entity): Insert delayed aspects into
|
||
tree.
|
||
* exp_ch3.adb, exp_ch6.adb, exp_ch9.adb, exp_disp.adb: New calling
|
||
sequence for Freeze_Entity.
|
||
* freeze.ads, freeze.adb (Freeze_Entity): Takes node rather than source
|
||
ptr. All calls are changed to this new interface.
|
||
(Freeze_And_Append): Same change
|
||
(Freeze_Entity): Evaluate deferred aspects
|
||
* sem_attr.adb: New calling sequence for Freeze_Entity
|
||
(Eval_Attribute): Don't try to evaluate attributes of unfrozen types
|
||
when we are in spec expression preanalysis mode.
|
||
* sem_ch10.adb: New calling sequence for Freeze_Entity
|
||
* sem_ch11.adb: Simplify analysis of aspect specifications now that the
|
||
flag Has_Aspects applies to all nodes (no need to save aspects).
|
||
* sem_ch12.adb: Simplify analysis of aspect specifications now that the
|
||
flag Has_Aspects applies to all nodes (no need to save aspects).
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): Major rewrite to
|
||
accomodate delaying aspect evaluation to the freeze point.
|
||
(Duplicate_Clause): Simplify using Get_Rep_Item_For_Entity, and also
|
||
accomodate delayed aspects.
|
||
(Rep_Item_Too_Late): Deal with delayed aspects case
|
||
* sem_ch13.ads (Rep_Item_Too_Late): Document handling of delayed
|
||
aspects.
|
||
* sem_ch3.adb (Analyze_Subtype_Declaration): Make sure that generic
|
||
actual types are properly frozen (this is needed because of the new
|
||
check in Eval_Attribute that declines to evaluate attributes
|
||
for unfrozen types).
|
||
Simplify analysis of aspect specifications now that the flag
|
||
Has_Aspects applies to all nodes (no need to save aspects).
|
||
* sem_ch3.ads (Preanalyze_Spec_Expression): Note use for delayed
|
||
aspects.
|
||
* sem_ch5.adb: Simplify analysis of aspect specifications now that the
|
||
flag Has_Aspects applies to all nodes (no need to save aspects).
|
||
New calling sequence for Freeze_Entity.
|
||
* sem_ch9.adb, sem_ch7.adb, sem_ch6.adb: Simplify analysis of aspect
|
||
specifications now that the flag Has_Aspects applies to all nodes
|
||
(no need to save aspects).
|
||
New calling sequence for Freeze_Entity
|
||
* sem_prag.adb (Check_Duplicate_Pragma): Simplify using
|
||
Get_Rep_Item_For_Entity
|
||
(Get_Pragma_Arg): Moved to Sinfo
|
||
* sinfo.ads, sinfo.adb (Aspect_Rep_Item_: New field
|
||
(Is_Delayed_Aspect): New flag
|
||
(Next_Rep_Item): Document use for aspects
|
||
(Get_Pragma_Arg): Moved here from Sem_Prag
|
||
* sprint.adb (Sprint_Aspect_Specifications): Now called after semicolon
|
||
is output and removes semicolon (simplifies interface).
|
||
(Sprint_Node_Actual): Simplify handling of aspects now that Has_Aspects
|
||
applies to any node.
|
||
* tree_gen.adb: Write contents of Aspect_Specifications hash table
|
||
* tree_in.adb: Read and initialize Aspect_Specifications hash table
|
||
* treepr.adb (Print_Node): Print Has_Aspects flag
|
||
(Print_Node): Print Aspect_Specifications in Has_Aspects set
|
||
* xtreeprs.adb: Remove obsolete references to Flag1,2,3
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* aspects.ads, aspects.adb: Major revision of this package for 2nd
|
||
stage of aspects implementation.
|
||
* gcc-interface/Make-lang.in: Add entry for aspects.o
|
||
* gcc-interface/Makefile.in: Add aspects.o to GNATMAKE_OBJS
|
||
* par-ch13.adb (Aspect_Specifications_Present): New function
|
||
(P_Aspect_Specifications): New procedure
|
||
* par-ch3.adb (P_Type_Declaration): Handle aspect specifications
|
||
(P_Derived_Type_Def_Or_Private_Ext_Decl): Handle aspect specifications
|
||
(P_Identifier_Declarations): Handle aspect specifications
|
||
(P_Component_Items): Handle aspect specifications
|
||
(P_Subtype_Declaration): Handle aspect specifications
|
||
* par-ch6.adb (P_Subprogram): Handle aspect specifications
|
||
* par-ch9.adb (P_Entry_Declaration): Handle aspect specifications
|
||
* par.adb (Aspect_Specifications_Present): New function
|
||
(P_Aspect_Specifications): New procedure
|
||
* sem.adb (Analyze_Full_Type_Declaration): New name for
|
||
Analyze_Type_Declaration.
|
||
(Analyze_Formal_Package_Declaration): New name (add _Declaration)
|
||
(Analyze_Formal_Subprogram_Declaration): New name (add _Declaration)
|
||
(Analyze_Protected_Type_Declaration): New name (add _Declaration)
|
||
(Analyze_Single_Protected_Declaration): New name (add _Declaration)
|
||
(Analyze_Single_Task_Declaration): New name (add _Declaration)
|
||
(Analyze_Task_Type_Declaration): New name (add _Declaration)
|
||
* sem_cat.adb (Analyze_Full_Type_Declaration): New name for
|
||
Analyze_Type_Declaration.
|
||
* sem_ch11.adb (Analyze_Exception_Declaration): Analyze aspect
|
||
specifications.
|
||
* sem_ch12.adb (Analyze_Formal_Object_Declaration): Handle aspect
|
||
specifications.
|
||
(Analyze_Formal_Package_Declaration): New name (add _Declaration)
|
||
(Analyze_Formal_Package_Declaration): Handle aspect specifications
|
||
(Analyze_Formal_Subprogram_Declaration): New name (add _Declaration)
|
||
(Analyze_Formal_Subprogram_Declaration): Handle aspect specifications
|
||
(Analyze_Formal_Type_Declaration): Handle aspect specifications
|
||
(Analyze_Generic_Package_Declaration): Handle aspect specifications
|
||
(Analyze_Generic_Subprogram_Declaration): Handle aspect specifications
|
||
(Analyze_Package_Instantiation): Handle aspect specifications
|
||
(Analyze_Subprogram_Instantiation): Handle aspect specifications
|
||
* sem_ch12.ads (Analyze_Formal_Package_Declaration): New name (add
|
||
_Declaration).
|
||
(Analyze_Formal_Subprogram_Declaration): New name (add _Declaration)
|
||
* sem_ch13.adb (Analyze_Aspect_Specifications): New procedure
|
||
(Duplicate_Clause): New function, calls to this function are added to
|
||
processing for all aspects.
|
||
* sem_ch13.ads (Analyze_Aspect_Specifications): New procedure
|
||
* sem_ch3.adb (Analyze_Full_Type_Declaration): New name for
|
||
Analyze_Type_Declaration.
|
||
* sem_ch3.ads (Analyze_Full_Type_Declaration): New name for
|
||
Analyze_Type_Declaration.
|
||
* sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Analyze aspect
|
||
specifications.
|
||
(Analyze_Subprogram_Declaration): Analyze aspect specifications
|
||
* sem_ch7.adb (Analyze_Package_Declaration): Analyze aspect
|
||
specifications.
|
||
(Analyze_Private_Type_Declaration): Analyze aspect specifications
|
||
* sem_ch9.adb (Analyze_Protected_Type_Declaration): Analyze aspect
|
||
specifications.
|
||
(Analyze_Protected_Type_Declaration): New name (add _Declaration)
|
||
(Analyze_Single_Protected_Declaration): Analyze aspect specifications
|
||
(Analyze_Single_Protected_Declaration): New name (add _Declaration)
|
||
(Analyze_Single_Task_Declaration): Analyze aspect specifications
|
||
(Analyze_Single_Task_Declaration): New name (add _Declaration)
|
||
(Analyze_Task_Type_Declaration): Analyze aspect specifications
|
||
(Analyze_Task_Type_Declaration): New name (add _Declaration)
|
||
* sem_ch9.ads (Analyze_Protected_Type_Declaration): New name (add
|
||
_Declaration).
|
||
(Analyze_Single_Protected_Declaration): New name (add _Declaration)
|
||
(Analyze_Single_Task_Declaration): New name (add _Declaration)
|
||
(Analyze_Task_Type_Declaration): New name (add _Declaration)
|
||
* sem_prag.adb: Use Get_Pragma_Arg systematically so that we do not
|
||
have to generate unnecessary pragma argument associations (this matches
|
||
the doc).
|
||
Throughout do changes to accomodate aspect specifications, including
|
||
specializing messages, handling the case of not going through all
|
||
homonyms, and allowing for cancellation.
|
||
* sinfo.ads, sinfo.adb: Clean up obsolete documentation for Flag1,2,3
|
||
(Aspect_Cancel): New flag
|
||
(From_Aspect_Specification): New flag
|
||
(First_Aspect): Removed flag
|
||
(Last_Aspect): Removed flag
|
||
* sprint.adb (Sprint_Aspect_Specifications): New procedure
|
||
(Sprint_Node_Actual): Add calls to Sprint_Aspect_Specifications
|
||
|
||
2010-10-11 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Actuals): Minor change to warning messages so
|
||
they match in Ada 95, 2005, and 2012 modes, in the case where the
|
||
language didn't change. Same thing for the run-time exception message.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* debug.adb Document that switch -gnatd.p enables the CIL verifier.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-htable.adb: Minor reformatting.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* debug.adb: Update comment.
|
||
|
||
2010-10-11 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (GNATCmd): Set Opt.Unchecked_Shared_Lib_Imports to True
|
||
unconditionally as for "gnat make" the projects are not processed in
|
||
the GNAT driver.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch10.ads, sem_ch10.adb (Load_Needed_Body): Add parameter to
|
||
suppress semantic analysis of the body when inlining, prior to
|
||
verifying that the body does not have a with_clause on a descendant
|
||
unit.
|
||
* inline.adb (Analyze_Inlined_Bodies): Do not inline a body if it has a
|
||
with_clause on a descendant.
|
||
(Scope_In_Main_Unit): Simplify.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch6.adb, freeze.adb: Minor reformatting.
|
||
|
||
2010-10-11 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (GNATCmd): For all tools other than gnatmake, allow
|
||
shared library projects to import projects that are not shared library
|
||
projects.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* debug.adb: Document that switch -gnatd.o generates the CIL listing.
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_prag.adb (Process_Suppress_Unsuppress): Only ignore
|
||
Suppress/Unsuppress pragmas in codepeer mode on user code.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_Call): For VM platforms, add missing expansion of
|
||
tag check in case of dispatching call through "=".
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Access_Subprogram_Declaration): In Ada2012 an incomplete
|
||
type is legal in the profile of any basic declaration.
|
||
* sem_ch6.adb (Analyze_Return_Type, Process_Formals): In Ada2012 an
|
||
incomplete type, including a limited view of a type, is legal in the
|
||
profile of any subprogram declaration.
|
||
If the type is tagged, its use is also legal in a body.
|
||
* sem_ch10.adb (Install_Limited_With_Clause): Do not process context
|
||
item if misplaced.
|
||
(Install_Limited_Withed_Unit): Refine legality checks when both the
|
||
limited and the non-limited view of a package are visible in the
|
||
context of a unit.
|
||
If this is not an error case, the limited view is ignored.
|
||
freeze.adb (Freeze_Entity): In Ada2012, an incomplete type is legal in
|
||
access to subprogram declarations
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch6.adb: Code clean up.
|
||
* exp_util.adb: Minor reformatting.
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_ch3.adb, exp_ch6.adb
|
||
(Make_Build_In_Place_Call_In_Anonymous_Context,
|
||
Make_Build_In_Place_Call_In_Assignment,
|
||
Make_Build_In_Place_Call_In_Object_Declaration): Fix calls to
|
||
Add_Task_Actuals_To_Build_In_Place_Call in case of No_Task_Hierarchy
|
||
restriction.
|
||
(Access_Definition): Add missing handling of No_Task_Hierarchy.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_util.adb (Remove_Side_Effects): No action needed for renamings of
|
||
class-wide expressions.
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* xr_tabls.adb, sem_res.adb: Minor reformatting
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat_rm.texi, exp_attr.adb, sem_attr.adb, sem_attr.ads,
|
||
snames.ads-tmpl (Analyze_Attribute, Expand_N_Attribute_Reference): Add
|
||
handling of Attribute_Ref. Add missing blanks in some error messages.
|
||
(Attribute_Ref, Name_Ref): Declare.
|
||
Document 'Ref attribute.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_attr.adb: Minor reformatting.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch8.adb (Attribute_Renaming): Add missing check to avoid loading
|
||
package System.Aux_Dec in VM platforms.
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_prag.adb (Process_Suppress_Unsuppress): Ignore
|
||
Suppress/Unsuppress pragmas in codepeer mode.
|
||
(Analyze_Pragma [Pragma_Suppress_All]): Do not generate error message
|
||
in codepeer mode.
|
||
* einfo.ads: Fix typo.
|
||
|
||
2010-10-11 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* sinfo.adb: Use GNAT.HTable rather than System.HTable.
|
||
* prj-nmsc.adb: Minor reformatting.
|
||
|
||
2010-10-11 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_attr.adb (Type_Key): Code simplification.
|
||
|
||
2010-10-11 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* gcc-interface/utils2.c (maybe_wrap_malloc): Fix crash when allocating
|
||
very large object on VMS.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch10.adb (Analyze_With_Clause): Add missing test to ensure
|
||
availability of attribute Instance_Spec.
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat1drv.adb (Adjust_Global_Switches): Disable codepeer mode if
|
||
checking syntax only or in ASIS mode.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Check_Delayed_Subprogram): Abstract subprograms may also
|
||
need a freeze node if some type in the profile has one.
|
||
* gcc-interface/trans.c (case N_Abstract_Subprogram_Declaration): If
|
||
entity has a freeze node, defer elaboration.
|
||
|
||
2010-10-11 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb (Check_Aggregate_Project): Add support for finding all
|
||
aggregated projects.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Entry_Call): Generate 's' reference for entry
|
||
call.
|
||
* sem_ch6.adb: Diagnose additional error condition.
|
||
|
||
2010-10-11 Bob Duff <duff@adacore.com>
|
||
|
||
* par.adb (Par): Clarify wording of certain error messages.
|
||
|
||
2010-10-11 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_disp.adb (Check_Dispatching_Operation): Revise test for warning
|
||
about nondispatching subprograms to use In_Same_List (reducing use of
|
||
Parent links).
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* xr_tabls.adb, sem_res.adb, lib-xref.adb, lib-xref.ads: Use s for
|
||
reference in a static call.
|
||
|
||
2010-10-11 Steve Baird <baird@adacore.com>
|
||
|
||
* exp_attr.adb (Expand_N_Attribute_Reference, case Type_Key): Type_Key
|
||
attribute should always be transformed into a string literal in
|
||
Analyze_Attribute.
|
||
* par-ch4.adb: Type_Key attribute's type is String; update value of
|
||
Is_Parameterless_Attribute constant to reflect this.
|
||
* sem_attr.adb (Analyze_Attribute): Recognize Type_Key attribute and
|
||
rewrite it as a string literal (attribute value is always known
|
||
statically).
|
||
* snames.ads-tmpl: Add entries for Type_Key attribute.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* lib-xref.adb (Output_References): Common handling for objects and
|
||
formals of an anonymous access type.
|
||
|
||
2010-10-11 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* make.adb (Scan_Make_Arg): Also pass -O to both compiler and linker.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb: Fix check for illegal equality declaration in Ada2012
|
||
|
||
2010-10-11 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_disp.adb (Check_Dispatching_Operation): When testing for issuing
|
||
a warning about subprograms of a tagged type not being dispatching,
|
||
limit this to cases where the tagged type and the subprogram are
|
||
declared within the same declaration list.
|
||
|
||
2010-10-11 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* projects.texi, prj-attr.adb: Add new attribute documentation_dir.
|
||
|
||
2010-10-11 Bob Duff <duff@adacore.com>
|
||
|
||
* par-ch9.adb, sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, impunit.adb,
|
||
impunit.ads, sem_ch5.adb, sem_type.adb, exp_imgv.adb, exp_util.adb,
|
||
switch-c.adb, exp_attr.adb, exp_ch9.adb, par-ch11.adb, usage.adb,
|
||
sem_ch9.adb, sem_ch10.adb, scng.adb, checks.adb, sem_prag.adb,
|
||
sem_ch12.adb, par-ch2.adb, freeze.adb, par-ch4.adb, sem_util.adb,
|
||
sem_res.adb, sem_attr.adb, par-ch6.adb, exp_ch4.adb, exp_ch6.adb,
|
||
sem_ch4.adb, exp_ch8.adb, par-ch10.adb, sem_ch6.adb, par-prag.adb,
|
||
exp_disp.adb, par-ch12.adb, sem_ch8.adb, snames.adb-tmpl, opt.ads,
|
||
exp_aggr.adb, sem_cat.adb, sem_ch13.adb, par-ch3.adb, exp_strm.adb,
|
||
exp_cg.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb: Use Ada_2005
|
||
instead of Ada_05 (Ada_Version_Type).
|
||
|
||
2010-10-11 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_aggr.adb, impunit.adb, impunit.ads, switch-c.adb, usage.adb,
|
||
sem_ch10.adb, sem_prag.adb, sem_ch12.adb, par-ch4.adb, par-ch6.adb,
|
||
par-ch8.adb, exp_ch4.adb, sem_ch4.adb, sem_ch6.adb, par-prag.adb,
|
||
opt.ads, par-ch3.adb, lib-xref.adb: Use Ada_2012 instead of Ada_12
|
||
(Ada_Version_Type).
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_util.adb (Safe_Prefixed_Reference): If the prefix is an explicit
|
||
dereference then do not exclude dereferences of access-to-constant
|
||
types to handle them as constant view of variables (and hence remove
|
||
side effects when required).
|
||
* sem_res.adb (Resolve_Slice): Ensure that side effects in the bounds
|
||
are properly handled.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb, sem_aggr.adb, sprint.adb: Minor reformatting.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch5.ads, exp_ch6.ads (Expand_N_Extended_Return_Statement): Moved
|
||
to exp_ch6.
|
||
(Expand_N_Simple_Return_Statement): Moved to exp_ch6.
|
||
* exp_ch5.adb, exp_ch6.adb (Expand_Non_Function_Return): Moved to
|
||
exp_ch6.
|
||
(Expand_Simple_Function_Return): Move to exp_ch6.
|
||
(Expand_N_Extended_Return_Statement): Moved to exp_ch6.
|
||
(Expand_N_Simple_Return_Statement): Moved to exp_ch6.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* snames.ads-tmpl: Add names for aspects.
|
||
* aspects.ads, aspects.adb: New.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_Actuals): If an actual is the current instance of
|
||
a task type, it must be replaced with a reference to Self.
|
||
|
||
2010-10-11 Vincent Celier <celier@adacore.com>
|
||
|
||
* adaint.h: Add prototype for function __gnat_create_output_file_new.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_aggr.adb (Collect_Aggr_Bounds): Remove side effects of collected
|
||
aggregate bounds.
|
||
|
||
2010-10-11 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_prag.adb (Check_Interrupt_Or_Attach_Handler): Do not emit error
|
||
for AI05-0033 in CodePeer mode.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* atree.h, atree.ads, atree.adb (Flag3): New flag (replaces Unused_1)
|
||
* csinfo.adb: Aspect_Specifications is a new special field
|
||
* einfo.adb (Flag3): New unused flag
|
||
* exp_util.adb (Insert_Actions): Add processing for
|
||
N_Aspect_Specification.
|
||
* sem.adb: Add entry for N_Aspect_Specification.
|
||
* sinfo.ads, sinfo.adb (N_Aspect_Specification): New node
|
||
(Has_Aspect_Specifications): New flag
|
||
(Permits_Aspect_Specifications): New function
|
||
(Aspect_Specifications): New function
|
||
(Set_Aspect_Specifications): New procedure
|
||
* sprint.adb (Sprint_Node): Put N_At_Clause in proper alpha order
|
||
(Sprint_Node): Add dummy entry for N_Aspect_Specification
|
||
* treepr.adb (Flag3): New flag to be listed
|
||
|
||
2010-10-11 Vincent Celier <celier@adacore.com>
|
||
|
||
* adaint.c: Minor reformatting.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb, s-htable.ads: Minor reformatting.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Selected_Component): If the selector is
|
||
invisible in an instantiation, and both the formal and the actual are
|
||
private extensions of the same type, look for the desired component in
|
||
the proper view of the parent type.
|
||
|
||
2010-10-11 Vincent Celier <celier@adacore.com>
|
||
|
||
* adaint.c (__gnat_number_of_cpus): Add implementation for Solaris,
|
||
AIX, Tru64, Darwin, IRIX and HP-UX.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-textio.adb: Minor reformatting
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-suesen.ads, a-suenst.ads,
|
||
a-suesen.adb, a-suenst.adb,
|
||
a-suewse.adb, a-suewst.adb,
|
||
a-suewse.ads, a-suewst.ads,
|
||
a-suezse.ads, a-suezst.ads,
|
||
a-suezse.adb, a-suezst.adb: New name for string encoding packages.
|
||
* impunit.adb: New names for string encoding units
|
||
* Makefile.rtl: New names for string encoding units
|
||
* rtsfind.ads: Minor code reorganization.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch5.adb: Code clean up.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Check_Limited_Return): Specialize warning on limited
|
||
returns when in a generic context.
|
||
(Analyze_Function_Return): ditto.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-multip.ads: Fix header.
|
||
* sem_ch3.adb, s-multip.adb, a-tigeli.adb: Minor reformatting.
|
||
|
||
2010-10-11 Vincent Celier <celier@adacore.com>
|
||
|
||
* Makefile.rtl: Add s-multip.
|
||
* adaint.c: New function __gnat_number_of_cpus, implemented for Linux,
|
||
defaulting to 1 for other platforms.
|
||
* adaint.h: New function __gnat_number_of_cpus.
|
||
* impunit.adb (Non_Imp_File_Names_12): New file list for Ada 2012,
|
||
with a single component "s-multip".
|
||
* impunit.ads (Kind_Of_Unit): New enumerated value Ada_12_Unit for Ada
|
||
2012.
|
||
* rtsfind.ads (RTU_Id): New enumerated value System_Multiprocessors
|
||
* s-multip.ads, s-multip.adb: New Ada 2012 package.
|
||
* sem_ch10.adb (Analyze_With_Clause): Check also Ada 2012 units.
|
||
|
||
2010-10-11 Javier Miranda <miranda@adacore.com>
|
||
|
||
* a-textio.adb: Move new implementation of Get_Line to a subunit.
|
||
* a-tigeli.adb: New subunit containing the implementation of Get_Line.
|
||
|
||
2010-10-11 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aux.adb: Code clean up.
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb, sem_aux.adb, sem_ch6.adb: Minor reformatting
|
||
|
||
2010-10-11 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.adb, atree.h, atree.ads, atree.adb: Define seven new flags
|
||
Flag248-Flag254. Define new field Field29.
|
||
|
||
2010-10-10 Olivier Hainque <hainque@adacore.com>
|
||
Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/lang.opt (gdwarf+): Remove.
|
||
* gcc-interface/gigi.h (get_parallel_type): Likewise
|
||
* gcc-interface/misc.c (gnat_dwarf_extensions): Likewise.
|
||
(gnat_handle_option): Remove OPT_gdwarfplus case.
|
||
(gnat_post_options): Remove setting of use_gnu_debug_info_extensions
|
||
from gnat_dwarf_extensions.
|
||
* gcc-interface/trans.c (gigi): Remove -gdwarf+ initializations.
|
||
* gcc-interface/utils.c (get_parallel_type): Remove.
|
||
|
||
2010-10-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gnat_to_gnu) <N_Not_In>: Use
|
||
invert_truthvalue_loc instead of invert_truthvalue.
|
||
* gcc-interface/utils2.c (build_binary_op) <NE_EXPR>: Likewise.
|
||
(build_unary_op) <TRUTH_NOT_EXPR>: Likewise.
|
||
|
||
2010-10-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
|
||
assertion on the types of the parameters. Use KIND local variable.
|
||
<E_Incomplete_Type>: Likewise.
|
||
|
||
2010-10-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/ada-tree.h (DECL_BY_DOUBLE_REF_P): New macro.
|
||
* gcc-interface/gigi.h (annotate_object): Add BY_DOUBLE_REF parameter.
|
||
* gcc-interface/decl.c (annotate_object): Likewise and handle it.
|
||
(gnat_to_gnu_entity): Adjust calls to annotate_object.
|
||
(gnat_to_gnu_param): If fat pointer types are passed by reference on
|
||
the target, pass them by explicit reference.
|
||
* gcc-interface/misc.c (default_pass_by_ref): Fix type of constant.
|
||
* gcc-interface/trans.c (Identifier_to_gnu): Do DECL_BY_DOUBLE_REF_P.
|
||
(Subprogram_Body_to_gnu): Adjust call to annotate_object.
|
||
(call_to_gnu): Handle DECL_BY_DOUBLE_REF_P.
|
||
* gcc-interface/utils.c (convert_vms_descriptor): Add BY_REF parameter
|
||
and handle it.
|
||
(build_function_stub): Iterate on the parameters of the subprogram in
|
||
lieu of on the argument types. Adjust call to convert_vms_descriptor.
|
||
|
||
2010-10-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/misc.c: Delete prototypes.
|
||
(gnat_init_options): Use local variable.
|
||
(lang_hooks): Move to the end of the file.
|
||
|
||
2010-10-08 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (gnat_init_options_struct): New. Split out
|
||
from gnat_init_options.
|
||
(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aux.adb: Cleanup Is_Immutably_Limited_Type.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb: Minor reformatting.
|
||
* exp_ch5.adb: Add comment.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb (Check_Duplicate_Pragma): Check for entity match
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
* einfo.ads: Minor reformatting.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch5.adb, sem_ch3.adb, exp_ch7.adb, exp_util.adb, sem_aux.adb,
|
||
sem_aux.ads, exp_ch4.adb, exp_ch6.adb, sem_ch6.adb, exp_aggr.adb,
|
||
exp_ch3.adb: Change Is_Inherently_Limited_Type to
|
||
Is_Immutably_Limited_Type to accord with new RM terminology.
|
||
* sem_aux.adb (Is_Immutably_Limited_Type): A type that is a descendant
|
||
of a formal limited private type is not immutably limited in a generic
|
||
body.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb (Check_Duplicate_Pragma): New procedure
|
||
Add calls to this new procedure where appropriate
|
||
|
||
2010-10-08 Vincent Celier <celier@adacore.com>
|
||
|
||
* a-textio.adb (Get_Chunk): Code clean up.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-strbou.ads, a-strfix.adb, a-strfix.ads, a-strsea.adb, a-strsea.ads,
|
||
a-strsup.adb, a-strsup.ads, a-strunb-shared.adb, a-strunb-shared.ads,
|
||
a-strunb.adb, a-strunb.ads, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
|
||
a-stwise.adb, a-stwise.ads, a-stwisu.adb, a-stwisu.ads,
|
||
a-stwiun-shared.adb, a-stwiun-shared.ads, a-stwiun.adb, a-stwiun.ads,
|
||
a-stzbou.ads, a-stzfix.adb, a-stzfix.ads, a-stzsea.adb, a-stzsea.ads,
|
||
a-stzsup.adb, a-stzsup.ads, a-stzunb-shared.adb, a-stzunb-shared.ads,
|
||
a-stzunb.adb, a-stzunb.ads (Find_Token): New version with From
|
||
parameter.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_cat.adb (Check_Categorization_Dependencies): Remote types
|
||
packages can depend on preleborated packages.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb (Check_Interrupt_Or_Attach_Handler): Pragmas
|
||
Interrupt_Handler and Attach_Handler not allowed in generics.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* ali.adb: Set Allocator_In_Body if AB parameter present on M line
|
||
* ali.ads (Allocator_In_Body): New flag
|
||
* bcheck.adb (Check_Consistent_Restrictions): Handle case of main
|
||
program violating No_Allocators_After_Elaboration restriction.
|
||
* gnatbind.adb (No_Restriction_List): Add entries for
|
||
No_Anonymous_Allocators, and No_Allocators_After_Elaboration.
|
||
* lib-load.adb: Initialize Has_Allocator flag
|
||
* lib-writ.adb: Initialize Has_Allocator flag
|
||
(M_Parameters): Set AB switch if Has_Allocator flag set
|
||
* lib-writ.ads: Document AB flag on M line
|
||
* lib.adb (Has_Allocator): New function
|
||
(Set_Has_Allocator): New procedure
|
||
* lib.ads (Has_Allocator): New function
|
||
(Set_Has_Allocator): New procedure
|
||
(Has_Allocator): New flag in Unit_Record
|
||
* sem_ch4.adb (Analyze_Allocator): Add processing for
|
||
No_Allocators_After_Elaboration.
|
||
|
||
2010-10-08 Geert Bosch <bosch@adacore.com>
|
||
|
||
* a-textio.adb (Get_Line): Rewrite to use fgets instead of fgetc.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_prag.adb (Analyze_Pragma): Relax semantic rule of
|
||
Java_Constructors because in the JRE library we generate occurrences
|
||
in which the "this" parameter is not the first formal.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch3.adb: Minor reformatting.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Make_DT): Do not generate dispatch tables for CIL/Java
|
||
types.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch8.adb (P_Use_Type_Clause): Recognize ALL keyword in Ada 2012
|
||
mode.
|
||
* sinfo.adb (Use_Type_Clause): Add All_Present flag.
|
||
* sinfo.ads (Use_Type_Clause): Add All_Present flag.
|
||
* s-rident.ads: Add entry for No_Allocators_After_Elaboration,
|
||
No_Anonymous_Allocators.
|
||
|
||
2010-10-08 Vincent Celier <celier@adacore.com>
|
||
|
||
* bindgen.adb (Gen_Restrictions_Ada): No new line after last
|
||
restriction, so that the last comma is always replaced with a left
|
||
parenthesis.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_prag.adb (Analyze_Pragma): Add specific check on the type of the
|
||
first formal of delegates.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_aggr.adb: Minor reformatting.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_imgv.adb (Expand_Image_Attribute): Handle special calling
|
||
sequence for soft hyphen for Character'Image case.
|
||
* rtsfind.ads (Image_Character_05): New entry
|
||
* s-imgcha.adb (Image_Character_05): New procedurew
|
||
* s-imgcha.ads (Image_Character_05): New procedure
|
||
* s-imgwch.adb (Image_Wide_Character): Deal with Ada 2005 soft hyphen
|
||
case.
|
||
* s-valcha.adb (Value_Character): Recognize SOFT_HYPHEN for 16#AD#
|
||
* sem_attr.adb (Eval_Attribute, case Width): Handle soft_hyphen name
|
||
properly.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_attr.adb (Eval_Attribute, case Width): Avoid ludicrous long loop
|
||
for case of Wide_[Wide_]Character.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb: Minor reformating
|
||
Minor code reorganization.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_prag.adb (Analyze_Pragma): Add missing checks on wrong use of
|
||
pragmas CIL_Constructor and Java_Constructor.
|
||
* exp_ch3.adb (Expand_Freeze_Record_Type): Do not generate the
|
||
predefined primitives for CIL/Java tagged types.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb: Minor reformatting.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat1drv.adb: Add call to Validate_Independence.
|
||
* par-prag.adb: Add dummy entries for Independent,
|
||
Independent_Componentsa.
|
||
* sem_ch13.adb (Validate_Independence): New procedure
|
||
(Initialize): Initialize address clause and independence check tables
|
||
* sem_ch13.ads (Independence_Checks): New table
|
||
(Validate_Independence): New procedure
|
||
* sem_prag.adb: Add processing for pragma Independent[_Components]
|
||
* snames.ads-tmpl: Add entries for pragma Independent[_Components]
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aggr.adb (Propagate_Discriminants): When expanding an aggregate
|
||
component with box initialization, if the component is a variant record
|
||
use the values of the discriminants to select the proper variant for
|
||
further box initialization.
|
||
|
||
2010-10-08 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* xsnames.adb: Remove obsolete file.
|
||
* make.adb, sem_ch8.adb, einfo.ads: Minor reformatting.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_aggr.adb: Complete previous change.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Check_Return_Subtype): The subtype indication in an
|
||
extended return must match statically the return subtype of the
|
||
enclosing function if the type is an elementary type or if it is
|
||
constrained.
|
||
|
||
2010-10-08 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Add_Source): Report all duplicate units and source file
|
||
names. Do not report the same duplicate unit several times.
|
||
* prj.ads (Source_Data): New Boolean component Duplicate_Unit,
|
||
defaulted to False, to avoid reporting the same unit as duplicate
|
||
several times.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aggr.adb (Resolve_Array_Aggregate): If the expression in an
|
||
others choice is a literal, analyze it to enable later optimizations.
|
||
* exp_aggr.adb (Expand_Record_Aggregate): An aggregate with static size
|
||
and components can be handled by the backend even if it is of a limited
|
||
type.
|
||
|
||
2010-10-08 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* a-rttiev.adb (task Timer): Since this package may be elaborated
|
||
before System.Interrupt, we need to call Setup_Interrupt_Mask
|
||
explicitly to ensure that this task has the proper signal mask.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* freeze.adb (Freeze_Entity): For array case, move some processing for
|
||
pragma Pack, Component_Size clause and atomic/volatile components here
|
||
instead of trying to do the job in Sem_Ch13 and Freeze.
|
||
* layout.adb: Use new Addressable function
|
||
* sem_ch13.adb (Analyze_Attribute_Representation_Clause, case
|
||
Component_Size): Move some handling to freeze point in
|
||
Freeze.Freeze_Entity.
|
||
* sem_prag.adb (Analyze_pragma, case Pack): Move some handling to
|
||
freeze point in Freese.Freeze_Entity.
|
||
* sem_util.ads, sem_util.adb (Addressable): New function.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sprint.adb: Minor reformatting.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch4.adb (Real_Range_Check): Declare temporary as constant.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb: Minor reformatting.
|
||
|
||
2010-10-08 Vincent Celier <celier@adacore.com>
|
||
|
||
* ali-util.adb (Get_File_Checksum): Make sure that external_as_list is
|
||
not a reserved word.
|
||
* prj-proc.adb (Expression): Process string list external references.
|
||
* prj-strt.adb (External_Reference): Parse external_as_list external
|
||
references.
|
||
* prj-tree.ads (Expression_Kind_Of): Allowed for N_External_Value nodes
|
||
(Set_Expression_Kind_Of): Ditto
|
||
* prj.adb (Initialize): Set external_as_list as a reserved word
|
||
* projects.texi: Document new string external reference
|
||
external_as_list.
|
||
* scans.ads (Token_Type): New token Tok_External_As_List
|
||
* snames.ads-tmpl: New standard name Name_External_As_List
|
||
|
||
2010-10-08 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_prag.adb: Minor reformatting.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Derived_Type_Declaration): In the private part of an
|
||
instance, it is legal to derive from a non-limited actual when the
|
||
formal type is untagged limited.
|
||
* sem_ch12.adb (Instantiate_Type): For a formal private type, use
|
||
analyzed formal as Generic_Parent_Type, to simplify later checks.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Insert_Default): If default value is already a
|
||
raise_constraint_error do not rewrite it as new raise node, to prevent
|
||
infinite loops in the warning removal machinery.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.adb, sem_prag.adb: Minor reformatting
|
||
|
||
2010-10-08 Hristian Kirtchev <kirtchev@adacore.com>
|
||
|
||
* gnat_rm.texi: Remove the section on pragma Implemented_By_Entry.
|
||
Add section on pragma Implemented.
|
||
|
||
2010-10-08 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Derive_Subprogram): If an abstract extension has a
|
||
concrete parent with a concrete constructor, the inherited constructor
|
||
is abstract even if the derived type is a null extension.
|
||
|
||
2010-10-08 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch4.adb: Minor reformatting.
|
||
|
||
2010-10-08 Hristian Kirtchev <kirtchev@adacore.com>
|
||
|
||
* einfo.adb: Flag 232 (formerly Implemented_By_Entry) is now unused.
|
||
(Implemented_By_Entry): Removed.
|
||
(Set_Implemented_By_Entry): Removed.
|
||
(Write_Entity_Flags): Remove the output for Implemented_By_Entry.
|
||
* einfo.ads: Remove Implemented_By_Entry and its usage in entities.
|
||
(Implemented_By_Entry): Removed along with its associated pragma.
|
||
(Set_Implemented_By_Entry): Removed along with its associated pragma.
|
||
* exp_ch9.adb: Alphabetize with and use clauses of Exp_Ch9.
|
||
(Build_Dispatching_Call_Equivalent): New routine.
|
||
(Build_Dispatching_Requeue): New routine.
|
||
(Build_Dispatching_Requeue_To_Any): New routine.
|
||
(Build_Normal_Requeue): New routine.
|
||
(Build_Skip_Statement): New routine.
|
||
(Expand_N_Requeue_Statement): Rewritten. The logic has been split into
|
||
several subroutines.
|
||
* par-prag.adb: Replace Pragma_Implemented_By_Entry by
|
||
Pragma_Implemented.
|
||
* sem_ch3.adb (Check_Abstract_Overriding): Perform checks concerning
|
||
pragma Implemented.
|
||
(Check_Pragma_Implemented): New routines.
|
||
(Inherit_Pragma_Implemented): New routine.
|
||
* sem_ch9.adb (Analyze_Requeue): Update the predicate which detects a
|
||
dispatching requeue.
|
||
* sem_prag.adb: Update array Sig_Flags by removing Implemented_By_Entry
|
||
and adding Implemented.
|
||
(Ada_2012_Pragma): New routine.
|
||
(Analyze_Pragma, case Implemented): Perform all necessary checks
|
||
concerning pragma Implemented and register the pragma as a
|
||
representation item with the procedure_LOCAL_NAME.
|
||
(Analyze_Pragma, case Implemented_By_Entry): Removed.
|
||
* sem_util.adb (Implementation_Kind): New routine.
|
||
* sem_util.ads (Implementation_Kind): New routine.
|
||
* snames.ads-tmpl: Remove Name_Implemented_By_Entry and add
|
||
Name_Implemented. Remove pragma name Pragma_Implemented_By_Entry and
|
||
add Pragma_Implemented. Add special names By_Any, By_Entry and
|
||
By_Protected_Procedure.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch3.adb (Expand_Freeeze_Record_Type): Code cleanup: remove local
|
||
variable Has_Static_DT by invocation of function Building_Static_DT.
|
||
|
||
2010-10-08 Vincent Celier <celier@adacore.com>
|
||
|
||
* g-dirope.adb (Remove_Dir): Do not change the current directory when
|
||
doing a recursive remove of a subdirectory.
|
||
|
||
2010-10-08 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch6.ad (Freeze_Subprogram): Factorize code.
|
||
* exp_disp.adb (Make_Secondary_DT): Factorize code.
|
||
(Make_DT): Factorize code.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb: Minor reformatting.
|
||
|
||
2010-10-08 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb (Check_Conformance): Check null exclusion match for full
|
||
conformance.
|
||
|
||
2010-10-08 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch12.adb (Instantiate_Object): Rename Formal_Id to Gen_Obj, for
|
||
consistency with Gen_T in Instantiate_Type.
|
||
Introduce constant A_Gen_Obj to avoid repeated queries for
|
||
Defining_Identifier (Analyzed_Formal).
|
||
|
||
2010-10-08 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb: Minor comment fix.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb, sem_ch13.adb: Implement AI05-0012-1/02.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.ad: (Instantiate_Object): For an in-out formal of a child
|
||
unit, if the type of the formal is declared in a parent unit and is not
|
||
a formal itself, the actual must be located from an enclosing parent
|
||
instance by normal visibility.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Allocator): In Ada 2012, a null_exclusion
|
||
indicator is illegal for an uninitialized allocator.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb (Analyze_Attribute_Definition_Clause, case
|
||
Component_Size): Complete previous change.
|
||
|
||
2010-10-07 Vincent Celier <celier@adacore.com>
|
||
|
||
* scng.adb (Scan): Call Accumulate_Token_Checksum for Tok_Identifier,
|
||
even for keywords, to avoid having the checksum to depend on the Ada
|
||
version.
|
||
|
||
2010-10-07 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_aggr.adb, sem_ch12.adb, sem_ch6.adb, par-ch5.adb,
|
||
exp_ch3.adb: Minor reformatting.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
|
||
Component_Size): It is now illegal to give an incorrect component size
|
||
clause in the case of aliased or atomic components.
|
||
* sem_prag.adb (Analyze_Pragma, case Pack): It is now illegal to give
|
||
an effective pragma Pack in the case of aliased or atomic components.
|
||
|
||
2010-10-07 Steve Baird <baird@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Allocator): Do not bypass expansion
|
||
in the case of a violation of an active No_Task_Hierarchy restriction.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Validate_Derived_Type_Instance): If a formal derived
|
||
type is non-limited, an actual for it cannot be limited.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads (No_Pool_Assigned): Update documentation.
|
||
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
|
||
Storage_Size): We only set No_Pool_Assigned if the expression is a
|
||
static constant and zero.
|
||
* sem_res.adb (Resolve_Allocator): Allocation from empty storage pool
|
||
should be an error not a warning.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_aggr.adb (Expand_Array_Aggregate): Recognize additional cases
|
||
where an aggregate in an assignment can be built directly into the
|
||
target, and does not require the creation of a temporary that may
|
||
overflow the stack.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aggr.adb (Analyze_Record_Aggregate): In Ada2012, a choice list
|
||
in a record aggregate can correspond to several components of
|
||
anonymous access types, as long as the designated subtypes match.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_rm.texi, exp_util.adb, sinfo.adb, sinfo.ads, sem_ch12.adb,
|
||
sem.adb, gnat_ugn.texi, sem_util.ads, par-ch6.adb, targparm.ads,
|
||
restrict.adb, sem_ch6.adb, sem_ch6.ads, sprint.adb, i-c.ads: Change
|
||
spelling parametrize(d) => parameterize(d).
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch12.adb: Add comment.
|
||
* sem_ch6.adb: Minor reformatting.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb, par-ch10.adb: Add
|
||
Pexp to Pf_Rec constants
|
||
(P_Subprogram): Expression is always enclosed in parentheses
|
||
* par.adb (Pf_Rec): add Pexp flag for parametrized expression
|
||
* sinfo.ads (N_Parametrized_Expression): Expression must be in parens
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Specification): Implement Ada2012
|
||
checks on functions that return an abstract type or have a controlling
|
||
result whose designated type is an abstract type.
|
||
(Check_Private_Overriding): Implement Ada2012 checks on functions
|
||
declared in the private part, if an abstract type is involved.
|
||
* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): In Ada2012,
|
||
reject a generic function that returns an abstract type.
|
||
* exp_ch5.adb (Expand_Simple_Function_Return): in Ada2012, if a
|
||
function has a controlling access result, check that the tag of the
|
||
return value matches the designated type of the return expression.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch6.adb: Fix error in handling of parametrized expressions.
|
||
* par-ch4.adb (P_Name): Allow qualified expression as name in Ada 2012
|
||
mode.
|
||
(P_Simple_Expression): Better message for qualified expression prefix
|
||
* s-crc32.adb: Minor reformatting.
|
||
* exp_intr.adb (Expand_Unc_Deallocation): Remove test for empty
|
||
storage pool (this test is moved to Sem_Intr).
|
||
* sem_intr.adb (Check_Intrinsic_Call): Add check for deallocation from
|
||
empty storage pool, moved here from Exp_Intr and made into error.
|
||
(Check_Intrinsic_Call): Remove assumption in generating not-null free
|
||
warning that the name of the instantiation is Free.
|
||
* sinput.adb (Tree_Read): Document use of illegal free call allowed in
|
||
GNAT mode.
|
||
* types.ads: Remove storage size clauses from big types (since we may
|
||
need to do deallocations, which are now illegal for empty pools).
|
||
|
||
2010-10-07 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add missing word.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_util.adb (Insert_Actions): Add handling of
|
||
N_Parametrized_Expression.
|
||
* par-ch6.adb (P_Subprogram): Add parsing of parametrized expression
|
||
* sem.adb: Add entry for N_Parametrized_Expression
|
||
* sem_ch6.adb (Analyze_Parametrized_Expression): New procedure
|
||
* sem_ch6.ads (Analyze_Parametrized_Expression): New procedure
|
||
* sinfo.ads, sinfo.adb: Add N_Parametrized_Expression
|
||
* sprint.adb (Sprint_Node): Add handling for N_Parametrized_Expression
|
||
* par-ch4.adb: Minor reformatting.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* scng.adb (Skip_Other_Format_Characters): New procedure
|
||
(Start_Of_Wide_Character): New procedure
|
||
(Scan): Use Start_Of_Wide_Character where appropriate
|
||
(Scan): Improve error message for other_format chars in identifier
|
||
(Scan): Allow other_format chars between tokens
|
||
|
||
2010-10-07 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_util.adb (Safe_Prefixed_Reference): When removing side effects,
|
||
Add missing support for explicit dereferences.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch10.adb, par-ch3.adb, par.adb: Minor reformatting.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_disp.adb, exp_dist.adb, exp_util.ads, exp_util.adb,
|
||
exp_ch11.adb: Rename Full_Qualified_Name to Fully_Qualified_Name_String
|
||
* sem_util.adb, sem_util.ads (Full_Qualified_Name): Moved to
|
||
Exp_Util.Fully_Qualified_Name_String.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* rtsfind.ads: Add entry for Ada.Real_Time.Timing_Events.Set_Handler
|
||
* sem_res.adb (Resolve_Call): A call to
|
||
Ada.Real_Time.Timing_Events.Set_Handler violates restriction
|
||
No_Relative_Delay (AI-0211).
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch10.adb: Small change in error message.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* tbuild.ads: Minor reformatting.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnatcmd.adb, make.adb, prj-nmsc.adb, sem_elab.adb: Minor reformatting
|
||
|
||
2010-10-07 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_ch11.adb (Expand_N_Exception_Declaration): Update comments.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb: Minor reformatting
|
||
|
||
2010-10-07 Olivier Ramonat <ramonat@adacore.com>
|
||
|
||
* gnat_ugn.texi: Minor editing.
|
||
* opt.ads: Document that scripts rely on specific formats in opt.ads
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-wichun.ads, a-wichun.adb (To_Lower_Case): New function
|
||
(To_Upper_Case): Fix to be inverse of To_Lower_Case
|
||
* a-zchuni.ads, a-zchuni.adb (To_Lower_Case): New function
|
||
(To_Upper_Case): Fix to be inverse of To_Lower_Case
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-wichha.adb, a-wichha.ads, a-zchhan.adb, a-zchhan.ads: New file.
|
||
* impunit.adb: Add entries for a-wichha/a-zchhan
|
||
* Makefile.rtl: Add entries for a-wichha/a-zchhan
|
||
|
||
2010-10-07 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Check): Call Check_Source_Info_In_ALI with Project_Tree
|
||
* makeutl.adb (Check_Source_Info_In_ALI): If there is at least one
|
||
replaced source, check that none of the replaced sources are in the
|
||
dependencies.
|
||
* makeutl.ads (Check_Source_Info_In_ALI): New parameter Tree
|
||
* prj-nmsc.adb (Remove_Source): New parameter Tree. If the source is
|
||
replaced with a source with a different file name, put it in the hash
|
||
table Replaced_Sources.
|
||
(Add_Source): Call Remove_Source with Data.Tree. If there is at least
|
||
one replaced source, check if it has the same file name as the current
|
||
source; if it has, remove it from the hash table Replaced_Sources.
|
||
* prj.adb (Reset): Reset hash table Tree.Replaced_Sources
|
||
* prj.ads (Replaced_Source_HTable): New hash table
|
||
(Project_Tree_Data): New components Replaced_Sources and
|
||
Replaced_Source_Number.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_elab.adb (Check_A_Call): After inserting elaboration check, set
|
||
proper flag to prevent a double elaboration check on the same call.
|
||
* exp_util.adb (Insert_Actions): If the enclosing node is an
|
||
Expression_With_Actions and it has been analyzed already, find
|
||
insertion point further up in the tree.
|
||
|
||
2010-10-07 Hristian Kirtchev <kirtchev@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Record_Representation_Clause): Alphabetize all
|
||
local variables. Remove the general restriction which prohibits the
|
||
application of record rep clauses to Unchecked_Union types. Add Ada
|
||
2012 check to detect improper naming of an Unchecked_Union
|
||
discriminant in record rep clause.
|
||
* sem_prag.adb: Add with and use clause for Exp_Ch7.
|
||
(Analyze_Pragma): Unchecked_Union case: Propagate the Unchecked_Union
|
||
type to all invocations of Check_Component and Check_Variant.
|
||
(Check_Component): Add formal parameters UU_Typ and In_Variant_Part.
|
||
Rewritten. Add Ada 2012 check to detect improper use of formal
|
||
private types and private extensions as component types of an
|
||
Unchecked_Union declared inside a generic body.
|
||
(Check_Variant): Add formal parameter UU_Typ. Propagate the
|
||
Unchecked_Union type to all calls of Check_Component. Signal that the
|
||
current component comes from the variant part of an Unchecked_Union
|
||
type.
|
||
(Inside_Generic_Body): New routine.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_Composite_Equality): When looking for a primitive
|
||
equality operation for a record component, verify that both formals
|
||
have the same type, and the result type is boolean.
|
||
|
||
2010-10-07 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (Check_Files): When looking for the .ci file for a
|
||
binder generated file, look for both b~xxx and b__xxx as gprbuild
|
||
always uses b__ as the prefix of such files.
|
||
|
||
2010-10-07 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb: Minor reformatting.
|
||
|
||
2010-10-07 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* debug.adb: Update -gnatd.J documentation.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_rm.texi: Document handling of invalid values
|
||
* s-utf_32.ads, s-utf_32.adb (UTF_To_Lower_Case): Fix implementation
|
||
to match new spec.
|
||
(UTF_To_Upper_Case): New function.
|
||
|
||
2010-10-07 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_attr.adb: Minor reformatting.
|
||
* einfo.ads, einfo.adb (Is_Ada_2012_Only): New flag
|
||
* itypes.adb (Create_Null_Excluding_Itype): Set Is_Ada_2012_Only flag
|
||
properly.
|
||
* lib-xref.adb (Generate_Reference): Warn on use of Ada 2012 entity in
|
||
non-Ada 2012 mode.
|
||
* opt.ads (Warn_On_Ada_2012_Compatibility): New flag
|
||
* sem_ch3.adb (Analye_Subtype_Declaration): Inherit Is_Ada_2012_Only
|
||
* sem_ch7.adb (Preserve_Full_Attributes): Preserve Is_Ada_2012_Only
|
||
flag.
|
||
* sem_prag.adb (Analyze_Pragma, case Ada_12/Ada_2012): Allow form with
|
||
argument.
|
||
* sem_type.adb (Disambiguate): Deal with Is_Ada_2012_Only.
|
||
* sem_warn.adb (Warn_On_Ada_2012_Compatibility): New flag, treated
|
||
same as 2005 flag.
|
||
|
||
2010-10-07 Javier Miranda <miranda@adacore.com>
|
||
|
||
* a-tags.ads: Use new support for pragma Ada_2012 with function
|
||
Type_Is_Abstract.
|
||
|
||
2010-10-07 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* par-ch5.adb (P_Sequence_Of_Statements): In Ada2012 a label can end a
|
||
sequence of statements.
|
||
|
||
2010-10-07 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (Check_Files): Only add a .ci files if it exists
|
||
|
||
2010-10-07 Javier Miranda <miranda@adacore.com>
|
||
|
||
* a-tags.ads, a-tags.adb (Type_Is_Abstract): New subprogram.
|
||
* rtsfind.ads (RE_Type_Is_Abstract): New entity.
|
||
* exp_disp.adb (Make_DT): Initialize TSD component Type_Is_Abstract.
|
||
|
||
2010-10-07 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_ch12.adb (Mark_Context): Removed, no longer needed.
|
||
(Analyze_Package_Instantiation): No longer analyze systematically a
|
||
generic body in CodePeer mode.
|
||
* freeze.adb, sem_attr.adb: Update comments.
|
||
|
||
2010-10-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch5.adb (Test_Statement_Required): Allow all pragmas in Ada 2012
|
||
mode.
|
||
|
||
2010-10-05 Pascal Obry <obry@adacore.com>
|
||
|
||
* gnat_rm.texi: Fix typo.
|
||
|
||
2010-10-05 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add note about identifiers with same name and
|
||
-fdump-ada-spec.
|
||
|
||
2010-10-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb: Minor reformatting.
|
||
* a-direct.ads: Minor comment update.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): Removing code that is
|
||
no longer required after change in New_Overloaded_Entity.
|
||
* sem_ch6.adb (New_Overloaded_Entity): Code reorganization to isolate
|
||
the fragment of code that handles derivations of interface primitives.
|
||
Add missing dependence on global variable Inside_Freezing_Actions to
|
||
ensure the correct management of internal interface entities.
|
||
* sem_ch13.adb (Analyze_Freeze_Entity): Add missing increase/decrease
|
||
of the global variable Inside_Freezing_Actions to ensure that internal
|
||
interface entities are well handled by New_Overloaded_Entity.
|
||
* sem_disp.adb (Find_Primitive_Covering_Interface): Add documentation
|
||
and complete the algorithm to catch hidden primitives derived of
|
||
private type that covers the interface.
|
||
* sem_disp.ads (Find_Primitive_Covering_Interface): Add missing
|
||
documentation.
|
||
|
||
2010-10-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* prj-util.adb, prj-util.ads, prj.ads, s-vxwext-rtp.adb, sem_ch4.adb,
|
||
sem_ch7.adb, sem_res.adb, sem_type.adb: Minor reformatting.
|
||
Minor code reorganization (use Nkind_In).
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch10.adb (Analyze_Task_Body_Stub): Diagnose duplicate stub for
|
||
task.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatbind.adb: If the main library file is not for a suitable main
|
||
program, change the error message.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* a-direct.ads: Minor spelling error fixes in comments.
|
||
* gnat_rm.texi: Add three entries in "Implementation Defined
|
||
Characteristics" for the interpretations of the Form parameters in
|
||
Ada.Directories.
|
||
|
||
2010-10-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb, exp_ch5.adb, exp_disp.adb, exp_dist.adb, gnatlink.adb,
|
||
makeutl.adb, par-ch6.adb, prj-dect.adb, prj-env.adb, prj-env.ads,
|
||
prj-ext.adb, prj-nmsc.adb, prj-part.adb, prj-pp.ads: Minor code
|
||
reorganization.
|
||
Minor reformatting.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Check_Parameterless_Call): If the prefix of 'Address is
|
||
an explicit dereference of an access to function, the prefix is not
|
||
interpreted as a parameterless call.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_attr.adb: For 'Read and 'Write, use full view of base type if
|
||
private.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Switches_Of): Allow wild cards in index of attributes
|
||
Switches.
|
||
* prj-util.adb (Value_Of): When Allow_Wildcards is True, use the index
|
||
of the associative array as a glob regular expression.
|
||
* prj-util.ads (Value_Of (Index, In_Array)): New Boolean parameter
|
||
Allow_Wildcards, defaulted to False.
|
||
(Value_Of (Name, Attribute_Or_Array_Name)): Ditto
|
||
* projects.texi: Document that attribute Switches (<file name>) may
|
||
use wild cards in the index.
|
||
|
||
2010-10-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-direct.adb, a-direct.ads, back_end.adb, checks.adb,
|
||
einfo.adb: Minor reformatting.
|
||
* debug.adb: Remove obsolete documentation for d.Z flag.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* vms_data.ads: Add VMS qualifier /SRC_INFO= corresponding to gnatmake
|
||
switch --create-info-file=.
|
||
* gnat_ugn.texi: Add documentation for new gnatmake switch
|
||
--source-info=
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb: Do not elaborate type definition if syntax error.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sprint.adb (Sprint_Node_Actual): Improve output of subprogram bodies
|
||
to generate the full-qualified names of its corresponding spec.
|
||
This facilitates locating the corresponing body when reading
|
||
the DG output.
|
||
|
||
2010-10-05 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_dist.adb (Make_Helper_Function_Name): For a tagged type, use
|
||
canonical name without serial number only if the helper is becoming a
|
||
primitive of the type.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Make_DT): Minor code reorganization.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* par-ch6.adb: improve recovery with extra paren in function spec.
|
||
|
||
2010-10-05 Quentin Ochem <ochem@adacore.com>
|
||
|
||
* prj-tree.ads: Project_Path is now aliased.
|
||
|
||
2010-10-05 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* checks.adb: Minor reformatting.
|
||
|
||
2010-10-05 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* mlib-tgt-specific-mingw.adb (No_Argument_List): Delete.
|
||
(Shared_Libgcc): New aliased variable.
|
||
(Shared_Libgcc_Switch): New constant.
|
||
(Build_Dynamic_Library): Pass Shared_Libgcc_Switch to the compiler
|
||
* gcc-interface/Makefile.in (gnatlib-shared-win32): Pass -shared-libgcc
|
||
to the compiler.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-part.adb (Parse_Simple_Project): When checking if a child project
|
||
imports its parent project, also look in projects being extended by
|
||
imported projects.
|
||
|
||
2010-10-05 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnat_ugn.texi: Adjust instructions in G.10 Building DLLs with GNAT.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Slot_Number): Add support to handle aliased entities.
|
||
(Generate_CG_Output): Switch -gnatd.Z is no longer needed to
|
||
activate this output.
|
||
|
||
2010-10-05 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* back_end.adb (Call_Back_End): Generate an error message when scil
|
||
generation is enabled, and no scil back-end (by default) is available.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* debug.adb: Update documentation since -gnatd.Z is no longer required
|
||
to generate the call-graph information.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_ch5.adb (Expand_Simple_Function_Return): Rewrite expansion of a
|
||
runtime access check by an equivalent expansion that causes
|
||
no problems in the VM backend. The original expansion was
|
||
not good for the VM backends because when Tagged_Type_Expansion
|
||
is disabled the attribute Access_Disp_Table is not available.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_type.adb (Covers): In a dispatching context, T1 covers T2 if T2
|
||
is class-wide and T1 is its specific type.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* einfo.adb: Add guard to Is_String_Type to prevent cascaded errors.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* back_end.ads: Minor spelling error correction.
|
||
|
||
2010-10-05 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* switch-c.adb, gnat1drv.adb (Scan_Front_End_Switches): Disable
|
||
warnings when -gnatC is specified here so that warnings can be
|
||
re-enabled explicitly.
|
||
(Adjust_Global_Switches): No longer suppress warnings.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* makeutl.adb: Minor reformatting.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch4.adb: add guard in Analyze_One_Call to prevent crash when a
|
||
non-discrete type appears as an actual in a call.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Scan_Make_Arg): Take into account new switch
|
||
--source-info=file.
|
||
* makeusg.adb: Add line for new switch --source-info=file.
|
||
* makeutl.ads (Source_Info_Option): New constant String for new builder
|
||
switch.
|
||
* prj-conf.adb: Put subprograms in alphabetical order
|
||
(Process_Project_And_Apply_Config): Read/write an eventual source info
|
||
file, if necessary.
|
||
* prj-nmsc.adb (Look_For_Sources.Get_Sources_From_Source_Info): New
|
||
procedure.
|
||
(Look_For_Sources): If a source info file was successfully read, get
|
||
the source data from the data read from the source info file.
|
||
* prj-util.adb (Source_Info_Table): New table
|
||
(Source_Info_Project_HTable): New hash table
|
||
(Create): New procedure
|
||
(Put (File), Put_Line): New procedures
|
||
(Write_Source_Info_File): New procedure
|
||
(Read_Source_Info_File): New procedure
|
||
(Initialize): New procedure
|
||
(Source_Info_Of): New procedure
|
||
(Next): New procedure
|
||
(Close): When file is an out file, fail if the buffer cannot be written
|
||
or if the file cannot be close successfully.
|
||
(Get_Line): Fail if file is an out file
|
||
* prj-util.ads (Create): New procedure
|
||
(Put (File), Put_Line): New procedures
|
||
(Write_Source_Info_File): New procedure
|
||
(Read_Source_Info_File): New procedure
|
||
(Source_Info_Data): New record type
|
||
(Source_Info_Iterator): New private type
|
||
(Initialize): New procedure
|
||
(Source_Info_Of): New procedure
|
||
(Next): New procedure
|
||
* prj.ads (Project_Tree_Data): New components Source_Info_File_Name and
|
||
Source_Info_File_Exists.
|
||
|
||
2010-10-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb: Fix typo.
|
||
|
||
2010-10-05 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* lib-writ.adb: Minor reformatting.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Access_Definition): Remove useless code.
|
||
|
||
2010-10-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-env.adb, prj-env.ads (Set_Path): New subprogram.
|
||
(Deep_Copy): Removed, not used.
|
||
|
||
2010-10-05 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): Code reorganization:
|
||
move code that searches in the list of primitives of a tagged type for
|
||
the entity that will be overridden by user-defined routines.
|
||
* sem_disp.adb (Find_Primitive_Covering_Interface): Move here code
|
||
previously located in routine Add_Internal_Interface_Entities.
|
||
* sem_disp.ads (Find_Primitive_Covering_Interface): Update docs.
|
||
* sem_ch6.adb (New_Overloaded_Entity): Add missing check on
|
||
availability of attribute Alias.
|
||
|
||
2010-10-05 Ed Falis <falis@adacore.com>
|
||
|
||
* s-taprop-vxworks.adb, s-osinte-vxworks.adb, s-osinte-vxworks.ads,
|
||
s-vxwext.ads, s-vxwext-kernel.ads, s-vxwext-rtp.adb, s-vxwext-rtp.ads:
|
||
Move definition of intContext to System.OS_Interface.
|
||
Add necessary variants in System.VxWorks.Extensions.
|
||
|
||
2010-10-05 Doug Rupp <rupp@adacore.com>
|
||
|
||
* s-asthan-vms-alpha.adb: On VMS, a task using
|
||
pragma AST_Entry exhibits a memory leak when the task terminates
|
||
because the vector allocated for the AST interface is not freed. Fixed
|
||
by making the vector a controlled type.
|
||
|
||
2010-10-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb (Expand_Subdirectory_Pattern): Check that the prefix in
|
||
a "**" pattern properly exists, and report an error otherwise.
|
||
|
||
2010-10-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-env.ads: Use GNAT.OS_Lib rather than System.OS_Lib.
|
||
|
||
2010-10-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb, prj-err.adb (Expand_Subdirectory_Pattern): New
|
||
subprogram.
|
||
Extract some code from Get_Directories, to share with the handling
|
||
of aggregate projects (for the Project_Files attributes)
|
||
|
||
2010-10-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* gnatcmd.adb, prj-proc.adb, prj-part.adb, prj-ext.adb, prj-ext.ads,
|
||
switch-m.adb, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-env.adb,
|
||
prj-env.ads, prj-tree.adb, prj-tree.ads (Project_Search_Path): New
|
||
type.
|
||
|
||
2010-10-05 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_ch5.adb (Make_Field_Expr): Revert previous change (removed).
|
||
|
||
2010-10-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-dect.adb, prj-nmsc.adb, prj-attr.adb, snames.ads-tmpl
|
||
(Aggregate projects): added support for parsing aggregate projects.
|
||
In particular, check the presence and value of the new attributes
|
||
related to aggregate projects, ie Project_Files, Project_Path
|
||
and External.
|
||
(Check_Attribute_Allowed, Check_Package_Allowed,
|
||
Rename_Obsolescent_Attributes): new subprogram, extracting code
|
||
from existing subprogram to keep their sizes smaller.
|
||
(Check_Aggregate_Project, Check_Abstract_Project,
|
||
Check_Missing_Sources): new subprograms
|
||
(Check): remove comments that duplicated either the name of the
|
||
following subprogram call, or the comment on that subprogram.
|
||
* prj-part.adb (Check_Extending_All_Imports): New subprogram, extracted
|
||
from Parse_Single_Project.
|
||
(Check_Aggregate_Imports): new subprogram.
|
||
|
||
2010-10-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Check): When compiling with -gnatc, recompile if the ALI
|
||
file has not been generated for the current source, for example if it
|
||
has been generated for the spec, but we are compiling the body.
|
||
|
||
2010-10-05 Bob Duff <duff@adacore.com>
|
||
|
||
* xgnatugn.adb: Remove unused procedure.
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* a-direct.adb (Copy_File): Interpret the Form parameter and call
|
||
System.OS_Lib.Copy_File to do the work accordingly. Raise Use_Error if
|
||
the Form parameter contains an incorrect value for field preserve= or
|
||
mode=.
|
||
* a-direct.ads (Create_Directory, Create_Path): Indicate that the Form
|
||
parameter is ignored.
|
||
(Copy_File): Indicate the interpretation of the Form parameter.
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Gnatmake): When there are no foreign languages declared and
|
||
a main in attribute Main of the main project does not exist or is a
|
||
source of another project, fail immediately before attempting
|
||
compilation.
|
||
|
||
2010-10-04 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.ads (Convert_Tag_To_Interface): New function which must be
|
||
used to convert a node referencing a tag to a class-wide interface
|
||
type.
|
||
* exp_disp.adb (Convert_Tag_To_Interface): New function.
|
||
(Expand_Interface_Conversion): Replace invocation of
|
||
Unchecked_Conversion by new function Convert_Tag_To_Interface.
|
||
(Write_DT): Add support for null primitives.
|
||
* exp_ch3.adb (Expand_N_Object_Declaration): For tagged type objects,
|
||
cleanup code that handles interface conversions and avoid unchecked
|
||
conversion of referenced tag components.
|
||
* exp_ch5.adb (Expand_N_Assignment_Statement): Code cleanup. Avoid
|
||
unrequired conversions when generating a dispatching call to _assign.
|
||
* sprint.adb (Write_Itype): Fix wrong output of not null access itypes.
|
||
|
||
2010-10-04 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Op_Not): Handle properly both operands when the
|
||
parent is a binary boolean operation and the operand is an unpacked
|
||
array.
|
||
(Build_Boolean_Array_Proc_Call): If the operands are both negations,
|
||
the operands of the rewritten node are the operands of the negations,
|
||
not the negations themselves.
|
||
|
||
2010-10-04 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Set_Biased): New procedure, now used throughout, adds
|
||
name of entity to biased warning msg.
|
||
(Analyze_Enumeration_Representation_Clause): Remove attempt to use
|
||
biased rep (wrong and never worked anyway).
|
||
|
||
2010-10-04 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_elab.adb: Minor reformatting.
|
||
|
||
2010-10-04 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Null): Handle properly the case of a subtype of
|
||
an access_to_protected subprogram type, and convert null value into
|
||
corresponding aggregate.
|
||
|
||
2010-10-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnat_ugn.texi: Clarify first point of 7.1.5 about pragma Inline.
|
||
|
||
2010-10-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* make.adb (Scan_Make_Arg): Pass -Oxxx switches to the linker as well.
|
||
* gnatlink.adb (Gnatlink): Filter out -Oxxx switches for CLI, RTX and
|
||
AAMP.
|
||
|
||
2010-10-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Indexed_Component_Form): Remove redundant test
|
||
for N_Operator_Symbol.
|
||
(Indicate_Name_And_Type): Likewise.
|
||
* sem_ch8.adb (Analyze_Subprogram_Renaming): Likewise.
|
||
* sem_res.adb (Resolve): Likewise.
|
||
* sem_type.adb (Add_One_Interp): Likewise.
|
||
(Disambiguate): Likewise.
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* osint.adb (Read_Library_Info_From_Full): If object timestamp is less
|
||
than ALI file timestamp, return null.
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-makr.adb (Finalize): Invoke Pretty_Print with Max_Length of 79.
|
||
* prj-pp.adb (Pretty_Print): New parameter Max_Line_Length, that
|
||
replaces global constant with the same name. When a line is too long,
|
||
indent properly the next continuation line.
|
||
* prj-pp.ads (Pretty_Print): New parameter Max_Line_Length with a range
|
||
from 50 to 255, defaulted to 255, to indicate the maximum length of
|
||
lines in the project file.
|
||
|
||
2010-10-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* sem_ch7.adb (Analyze_Package_Body_Helper) <Has_Referencer>: New
|
||
Check_Subprogram_Ref function and Check_Subprogram_Refs instantiation
|
||
of Traverse_Func on it to look for subprogram references in a body.
|
||
Call Check_Subprogram_Refs on the body of inlined subprograms at the
|
||
outer level and keep clearing the Is_Public flag of subprograms as long
|
||
as it returns OK. Do not look at anything else than subprograms once
|
||
an inlined subprogram has been seen.
|
||
|
||
2010-10-04 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Expand_N_Assignment_Statement): Restore tag check when
|
||
the target object is an interface.
|
||
* sem_disp.adb (Propagate_Tag): If the controlling argument is an
|
||
interface type then we generate an implicit conversion to force
|
||
displacement of the pointer to the object to reference the secondary
|
||
dispatch table associated with the interface.
|
||
|
||
2010-10-04 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Set
|
||
Enumeration_Rep_Expr to point to the literal, not the identifier.
|
||
(Analyze_Enumeration_Representation_Clause): Improve error message for
|
||
size too small for enum rep value
|
||
(Analyze_Enumeration_Representation_Clause): Fix size test to use
|
||
proper size (RM_Size, not Esize).
|
||
|
||
2010-10-04 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-taprop-vxworks.adb, sem_res.adb: Minor reformatting.
|
||
|
||
2010-10-04 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Write_Call_Info): Code clean up.
|
||
|
||
2010-10-04 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-taprop-mingw.adb (Create_Task): Initialize Thread_Id field to 0.
|
||
|
||
2010-10-04 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_cg.adb: Minor code reorganization
|
||
Minor reformatting.
|
||
* exp_ch5.adb, prj-nmsc.adb: Minor reformatting.
|
||
|
||
2010-10-04 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Type_Conversion): If a type conversion is needed
|
||
to make a qualified expression into a name (syntax-wise), then do not
|
||
consider it redundant.
|
||
|
||
2010-10-04 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_warn.ads: Fix typo.
|
||
|
||
2010-10-04 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Is_Predefined_Dispatching_Operation): Handle suffix in
|
||
TSS names.
|
||
(Write_Call_Info): Add missing support for renamed primitives.
|
||
|
||
2010-10-04 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch5.adb (Make_Field_Expr): New subprogram, to factor duplicated
|
||
code between Make_Component_List_Assign and Make_Field_Assign.
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Get_Directories): For non extending projects that
|
||
declare that they have no sources, do not create a non existing object
|
||
or exec directory if builder switch -p is used.
|
||
|
||
2010-10-04 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi (gnatcheck): Change the description of the report file
|
||
format.
|
||
|
||
2010-10-04 Ed Falis <falis@adacore.com>
|
||
|
||
* s-taprop-vxworks.adb (Is_Task_Context): Import VxWorks intContext to
|
||
determine whether Set_True is called from a task or an ISR.
|
||
(Set_True): test for being in a task context before trying to
|
||
dereference Defer_Abort or Undefer_Abort.
|
||
|
||
2010-10-04 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb, sinput-l.adb: Minor reformatting.
|
||
|
||
2010-10-04 Hristian Kirtchev <kirtchev@adacore.com>
|
||
|
||
* exp_ch5.adb (Expand_N_Assignment_Statement): Do not generate a tag
|
||
check when the target object is an interface since the expression of
|
||
the right hand side must only cover the interface.
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* frontend.adb: Set Lib.Parsing_Main_Extended_Source to True before
|
||
loading the main source, so that if it is preprocessed and -gnateG is
|
||
used, the preprocessed file is written.
|
||
* lib.ads (Analysing_Subunit_Of_Main): New global variable to indicate
|
||
if a subunit is from the main unit when it is loaded.
|
||
* sem_ch10.adb (Analyze_Proper_Body): Set Lib.Analysing_Subunit_Of_Main
|
||
to True before loading a subunit.
|
||
* sem_ch12.adb (Copy_Generic_Node): Set Lib.Analysing_Subunit_Of_Main
|
||
to True when the main is a generic unit before loading one of its
|
||
subunits.
|
||
* sinput-l.adb (Load_File): If -gnateG is used, write the preprocessed
|
||
file only for the main unit (spec, body and subunits).
|
||
|
||
2010-10-04 Vincent Celier <celier@adacore.com>
|
||
|
||
* sinput-l.adb (Load_File): Do not fail when switch -gnateG is
|
||
specified and the processed file cannot be written. Just issue a
|
||
warning and continue.
|
||
|
||
2010-10-04 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb: Minor reformatting.
|
||
|
||
2010-10-04 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Analyze_Subprogram_Renaming): If the renamed operation
|
||
is an overridden inherited operation, the desired operation is the
|
||
overriding one, which is the alias of the visible one.
|
||
|
||
2010-10-04 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Find_Corresponding_Spec): Check that the wrapper body is
|
||
present before deleting from the tree, when an inherited function with
|
||
a controlling result that returns a null extension is overridden by a
|
||
later declaration or body.
|
||
|
||
2010-10-04 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* checks.adb: Update comment.
|
||
|
||
2010-09-30 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (optimize, optimize_size): Undefine as macros
|
||
and define as variables.
|
||
(gnat_post_options): Set optimize and optimize_size variables.
|
||
|
||
2010-09-29 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||
|
||
* g-socket.adb: Move pragma to disable warnings in case multiple errnos
|
||
are not defined by target.
|
||
|
||
2010-09-29 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (handle_leaf_attribute): Fix long line.
|
||
|
||
2010-09-28 Richard Henderson <rth@redhat.com>
|
||
|
||
* gcc-interface/misc.c (gnat_eh_personality): Use
|
||
targetm.except_unwind_info.
|
||
|
||
2010-09-28 Jan Hubicka <jh@suse.cz>
|
||
|
||
* gcc-interface/utils.c (handle_leaf_attribute): New function.
|
||
(gnat_internal_attribute_tables): Add leaf.
|
||
|
||
2010-09-22 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/lang.opt (-all-warnings, -include-barrier,
|
||
-include-directory, -include-directory=, -no-standard-includes,
|
||
-no-standard-libraries): New.
|
||
|
||
2010-09-20 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Replace calls to
|
||
build_array_type with calls to build_nonshared_array_type.
|
||
(substitute_in_type): Likewise.
|
||
* gcc-interface/misc.c (LANG_HOOKS_HASH_TYPES): Delete.
|
||
(LANG_HOOKS_TYPE_HASH_EQ): Define.
|
||
(gnat_post_options): Add 'static' keyword.
|
||
(gnat_type_hash_eq): New static function.
|
||
* gcc-interface/utils.c (fntype_same_flags_p): New function.
|
||
(create_subprog_type): Call it.
|
||
(create_index_type): Call build_nonshared_range_type and tidy up.
|
||
(create_range_type): Likewise.
|
||
* gcc-interface/gigi.h (fntype_same_flags_p): Declare.
|
||
|
||
2010-09-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gnat_pushdecl): Do not do anything special
|
||
for PARM_DECLs.
|
||
(end_subprog_body): If the body is a BIND_EXPR, make its associated
|
||
block the top-level one.
|
||
(build_function_stub): Build a statement group for the whole function.
|
||
* gcc-interface/utils.c (Subprogram_Body_to_gnu): If copy-in/copy-out
|
||
is used, create the enclosing block early and process first the OUT
|
||
parameters.
|
||
|
||
2010-09-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>: Do
|
||
not generate debug info for individual enumerators.
|
||
|
||
2010-09-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Use record
|
||
type instead of enumeral type as the dummy type built for the template
|
||
type of fat pointers.
|
||
|
||
2010-09-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (get_elaboration_procedure): Declare.
|
||
(gnat_zaplevel): Likewise.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not force global
|
||
binding level for an external constant.
|
||
<E_Constant>: Force the local context and create a fake scope before
|
||
translating the defining expression of an external constant.
|
||
<object>: Treat external constants at the global level explicitly for
|
||
renaming declarations.
|
||
(elaborate_expression_1): Force the variable to be static if the
|
||
expression is global.
|
||
* gcc-interface/trans.c (get_elaboration_procedure): New function.
|
||
(call_to_gnu): Use it.
|
||
(gnat_to_gnu): Likewise.
|
||
<N_Object_Declaration>: Do not test Is_Public to force the creation of
|
||
an initialization variable.
|
||
(add_decl_expr): Discard the statement if the declaration is external.
|
||
* gcc-interface/utils.c (gnat_pushdecl): Do not put the declaration in
|
||
the current block if it is external.
|
||
(create_var_decl_1): Do not test Is_Public to set TREE_STATIC.
|
||
(gnat_zaplevel): New global function.
|
||
|
||
2010-09-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Explicitly test _LEVEL
|
||
variables against zero in all cases.
|
||
(rest_of_type_decl_compilation): Likewise.
|
||
* gcc-interface/trans.c (gigi): Pass properly typed constants to
|
||
create_var_decl.
|
||
(call_to_gnu): Fix formatting.
|
||
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
|
||
(Exception_Handler_to_gnu_zcx): Likewise.
|
||
(gnat_to_gnu) <N_Object_Declaration>: Short-circuit handling of
|
||
constant
|
||
expressions in presence of a freeze node.
|
||
|
||
2010-09-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Look into
|
||
expressions for external constants that are aggregates.
|
||
* gcc-interface/utils2.c (build_simple_component_ref): If the field
|
||
is an inherited component in an extension, look through the extension.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* projects.texi: Add documentation for package extensions
|
||
Add some documentation for attributes Leading_Library_Options and
|
||
Linker'Leading_Switches.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_util.adb (Expand_Subtype_From_Expression): When expansion is
|
||
disabled, compute subtype for all string types.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add documentation for -gnatw.s/S
|
||
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
|
||
Component_Size): Implement warning on overriden size clause.
|
||
(Analyze_Record_Representation_Clause): Implement warning on overriden
|
||
size clause.
|
||
* sem_warn.ads, sem_warn.adb (Warn_On_Overridden_Size): New flag
|
||
(-gnatw.s/S).
|
||
* ug_words: Add entries for -gnatw.s/S.
|
||
* vms_data.ads, usage.adb: Add line for -gnatw.s/-gnatw.S.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-dect.adb (Parse_Package_Declaration): Allow a package to extend
|
||
a package with the same name from an imported or extended project.
|
||
* prj-proc.adb (Process_Declarative_Items): Process package extensions
|
||
|
||
2010-09-10 Bob Duff <duff@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_Call): Do not perform a null_exclusion check on
|
||
'out' parameters.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem.adb: Minor reformatting.
|
||
|
||
2010-09-10 Bob Duff <duff@adacore.com>
|
||
|
||
* s-os_lib.ads, g-expect.ads: Add comments.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch5.adb: Minor reformatting.
|
||
|
||
2010-09-10 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* scos.ads: Add comments.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (Get_Closure): Remove useless invocation of Close.
|
||
|
||
2010-09-10 Hristian Kirtchev <kirtchev@adacore.com>
|
||
|
||
* exp_ch7.adb, exp_ch6.adb (Expand_Call): Establish a transient scope
|
||
for a controlled build-in-place function call which appears in an
|
||
anonymous context. The transient scope ensures that the intermediate
|
||
function result is cleaned up after the master is left.
|
||
(Make_Build_In_Place_Call_In_Anonymous_Context): Remove the creation
|
||
of the transient scope. This is now done in Exand_Call which covers
|
||
additional cases other than secondary stack release.
|
||
|
||
2010-09-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem.adb (Do_Unit_And_Dependents): Add guard.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch5.adb: Update comments.
|
||
* exp_dist.adb: Minor reformatting.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb (Check_Record_Representation_Clause): Implement record
|
||
gap warnings.
|
||
* sem_warn.ads, sem_warn.adb (Warn_On_Record_Holes): New warning flag.
|
||
* usage.adb: Add lines for -gnatw.h/H
|
||
* gnat_ugn.texi: Add documentation for J519-010
|
||
Warn on record holes/gaps
|
||
* ug_words: Add entries for -gnatw.h/-gnatw.H
|
||
* vms_data.ads: Add entries for [NO]AVOIDGAPS
|
||
|
||
2010-09-10 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch6.adb: Update comment.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Derived_Private_Type): Mark generated declaration
|
||
of full view analyzed after analyzing the corresponding record
|
||
declaration, to prevent spurious name conflicts with original
|
||
declaration.
|
||
|
||
2010-09-10 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): In the VM case,
|
||
just issue a warning, but continue with the normal processing.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_attr.adb, prj-nmsc.adb, sem_ch4.adb, sem_res.adb: Minor
|
||
reformatting.
|
||
|
||
2010-09-10 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_dist.adb (Build_From_Any_Call, Build_To_Any_Call,
|
||
Build_TypeCode_Call): For a subtype inserted for the expansion of a
|
||
generic actual type, go to the underlying type of the original actual
|
||
type.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch5.adb (Expand_Assign_Array_Loop): In CodePeer mode, place a
|
||
guard around the increment statement, to prevent an off-by-one-value
|
||
on the last iteration.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* sem_aggr.adb, exp_prag.adb, sem_ch3.adb, exp_attr.adb,
|
||
sem_res.adb, sem_attr.adb, sem_elab.adb, sem_ch4.adb, exp_disp.adb,
|
||
exp_aggr.adb, exp_dist.adb: Change all mentions of "at run-time" to
|
||
"at run time" in comments and error/warning messages.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_cg.adb: Handle properly bodies without specs.
|
||
|
||
2010-09-10 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb (Find_Source_Dirs): When a source directory is not
|
||
present, and the user requested to either ignore this or display a
|
||
warning (as opposed to an error), we still need to register the
|
||
directory.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.adb: Remove tests of Parsing_Main_Subunit, since this test is
|
||
now done in In_Extended_Main_Source_Unit.
|
||
* errout.ads (Compiler_State[_Type]): Moved from Errout to Lib
|
||
(Parsing_Main_Subunit): Moved from Errout to Lib and renamed
|
||
as Parsing_Main_Extended_Source.
|
||
* frontend.adb: Set Parsing_Main_Extended_Source True for parsing main
|
||
unit.
|
||
* lib-load.adb (Load_Unit): Add PMES parameter
|
||
Set PMES appropriately in all calls to Load_Unit
|
||
* lib-load.ads (Load_Unit): Add PMES parameter
|
||
* lib.adb (In_Extended_Main_Source_Unit): When called with
|
||
Compiler_State set to Parsing, test new flag
|
||
Compiling_Main_Extended_Source.
|
||
* lib.ads (Compiler_State[_Type]): Moved from Errout to Lib
|
||
(Parsing_Main_Subunit): Moved from Errout to Lib and renamed
|
||
as Parsing_Main_Extended_Source
|
||
* par-load.adb (Load): Set PMES properly in call to Load_Unit
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_cg.adb: Use proper entity to handle overloads.
|
||
* sem_res.adb (Check_Parameterless_Call): An operator node without
|
||
actuals cannot be a call, and must be treated as a string.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* frontend.adb: Minor reformatting.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch4.adb (P_Conditional_Expression): Use P_Condition for condition
|
||
* par-ch5.adb (P_Condition): Move from body to spec
|
||
* par.adb (Ch5.P_Condition): Move from body to spec
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_cg.adb (Write_Call_Info): If a type that has been registered in
|
||
the call table is private, use its full view to generate information
|
||
on its operations.
|
||
|
||
2010-09-10 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* exp_cg.adb (Is_Predefined_Dispatching_Operation): When trying the
|
||
pattern matching to detect predefined primitive operations take into
|
||
account that there can be an extra suffix related to body-nested
|
||
package entities.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* s-pooglo.ads: Add overriding indicators.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* vms_data.ads: Add new GNAT BIND qualifiers /32_MALLOC (for -H32) and
|
||
/64_MALLOC (for -H64).
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.adb (Error_Msg_Internal): Test Parsing_Main_Subunit flag
|
||
(Error_Msg_NW): Test Parsing_Main_Subunit flag
|
||
* errout.ads (Parsing_Main_Subunit): New flag
|
||
* lib-load.adb (Load_Unit): Set Parsing_Main_Subunit flag
|
||
* par-ch6.adb: Minor style fix (remove redandant parentheses)
|
||
* par-ch9.adb: Minor style fix (remove redundant parens)
|
||
* par-load.adb: (Load): Deal with setting Parsing_Main_Subunit
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Create_Binder_Mapping_File): Remove procedure. Replaced by
|
||
function of the same name in Makeutl.
|
||
(Gnatmake): Call function Create_Binder_Mapping_File in Makeutl, instead
|
||
of removed procedure when creating a binder mapping file.
|
||
* makeutl.adb (Create_Binder_Mapping_File): New function. Was a
|
||
procedure in Make.
|
||
* makeutl.ads (Create_Binder_Mapping_File): New function
|
||
|
||
2010-09-10 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* exp_cg.adb (Is_Predefined_Dispatching_Operation): Add the "__" scope
|
||
separator when trying the pattern matching to detect predefined
|
||
primitive operations.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* bindgen.adb, atree.adb: Minor reformatting.
|
||
|
||
2010-09-10 Ben Brosgol <brosgol@adacore.com>
|
||
|
||
* ug_words, gnat_ugn.texi: Revised "Transitioning to 64-Bit GNAT for
|
||
OpenVMS" section.
|
||
|
||
2010-09-10 Doug Rupp <rupp@adacore.com>
|
||
|
||
* bindgen.adb: Minor comment fix for -H switch.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_cg.adb (Register_CG_Node): Determine enclosing subprogram or
|
||
library unit now, by traversing tree before context is expanded.
|
||
(Write_Call_Info): Use enclosing unit name directly.
|
||
* exp_ch9.adb (Expand_N_Accept_Statement): Attach generated block to
|
||
tree earlier, to ensure that subsequent declarations are analyzed in a
|
||
connected structure.
|
||
* exp_intr.adb (Expand_Unc_Deallocation): Ditto for generated statement
|
||
list.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* symbols-processing-vms-alpha.adb: Minor reformatting.
|
||
|
||
2010-09-10 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* bindgen.adb (Gen_Adainit_Ada): In .NET, don't call
|
||
__gnat_install_handler in case the binder is called with -n.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb (Make_Build_In_Place_In_Object_Declaration): Use proper
|
||
sloc for renaming declaration and set Comes_From_Source properly to
|
||
ensure that references are properly generated for an object declaration
|
||
that is built in place.
|
||
|
||
2010-09-10 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* symbols-processing-vms-alpha.adb: Allow gnatsym to work as a cross
|
||
tool.
|
||
* gcc-interface/Make-lang.in: Install gnatsym when cross compiling.
|
||
* gcc-interface/Makefile.in: gnat.hlp is now generated by
|
||
Make-generated.in
|
||
|
||
2010-09-10 Bob Duff <duff@adacore.com>
|
||
|
||
* exp_pakd.adb (Expand_Bit_Packed_Element_Set): For things like ""X(J)
|
||
:= ...;", remove side effects from the right-hand side, because they
|
||
might affect the value of the left-hand side, but the left-hand side is
|
||
first READ (so we can do shifting and masking) and then written back,
|
||
which would cause the side effects to be incorrectly overwritten.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb: Minor reformatting.
|
||
* exp_ch6.adb: Add comment on testing limited on full type
|
||
* gnat_rm.texi: Add documentation on Pure_Function.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Add_Source): Allow an Ada source to have the same name
|
||
as a source of another project and of another language.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb (Expand_N_Object_Declaration): Defend against previous
|
||
errors.
|
||
* freeze.adb (Check_Unsigned_Type): Ditto.
|
||
* sem_aggr.adb (Resolve_Aggr_Expr): Ditto.
|
||
* sem_ch3.adb (Convert_Scalar_Bounds): Ditto.
|
||
(Set_Scalar_Range_For_Subtype): Ditto.
|
||
* sem_eval.adb (Subtypes_Statically_Match): Ditto.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* repinfo.adb (List_Type_Info): List Small and Range for fixed-point
|
||
types.
|
||
* sprint.adb (Write_Ureal_With_Col_Check_Sloc): Use square brackets
|
||
rather than parens for fixed constants.
|
||
* sprint.ads: Use square brackets rather than parens for fixed constants
|
||
* urealp.adb (UR_Write): Use square brackets rather than parens
|
||
(UR_Write): Add Brackets argument
|
||
(UR_Write): Add many more special cases to output literals
|
||
* urealp.ads (UR_Write): Use square brackets rather than parens
|
||
(UR_Write): Add Brackets argument
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb: Minor reformatting.
|
||
|
||
2010-09-10 Richard Guenther <rguenther@suse.de>
|
||
|
||
* gcc-interface/utils.c (create_index_type): Use build_range_type.
|
||
|
||
2010-09-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* vms_cmds.ads: New.
|
||
|
||
2010-09-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_dbug.ads: Mention enhanced encoding for array types.
|
||
|
||
2010-09-10 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Size clause are
|
||
unsupported in VM targets. Display a warning in this case.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sprint.adb (Sprint_Node_Actual, case N_Derived_Type_Definition): Do
|
||
not reset Sloc when printing keyword "new".
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (GNATCmd): Put the command line in environment variable
|
||
GNAT_DRIVER_COMMAND_LINE.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb (Do_Unit_And_Dependents): if Withed_Body is set on a context
|
||
clause, process the body at once.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Type_Conversion): Do not warn on a redundant
|
||
conversion is the expression is a qualified expression used to
|
||
disambiguate a function call.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Add_Source): Allow an Ada source to have the same name
|
||
as a source of another project and of another language.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* prj-util.adb: Minor reformatting.
|
||
|
||
2010-09-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_disp.adb: Minor reformatting.
|
||
|
||
2010-09-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_prag.adb (Analyze_Pragma): Ignore Inline_Always pragma in
|
||
CodePeer mode.
|
||
|
||
2010-09-10 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb: Minor reformatting.
|
||
* exp_ch9.adb, rtsfind.ads, exp_ch4.adb, exp_ch3.adb: Do not hardcode
|
||
magic constants for task master levels (instead, reference
|
||
named numbers from System.Tasking).
|
||
|
||
2010-09-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnatvsn.ads (Ver_Prefix): New constant string.
|
||
* bindgen.adb (Gen_Output_File_Ada): Use it in lieu of hardcoded value.
|
||
(Gen_Output_File_C): Likewise.
|
||
* g-comver.adb (Ver_Prefix): Add cross-reference to Gnatvsn.Ver_Prefix
|
||
in comment.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb (Walk_Library_Items): Do not traverse children of the main
|
||
unit, to prevent spurious circularities in the walk order.
|
||
(Depends_On_Main): Use elsewhere to prevent circularities when the body
|
||
of an ancestor of the main unit depends on a child of the main unit.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnatlink.adb, prj-ext.adb, prj-util.adb, s-tporft.adb,
|
||
sem_ch3.adb: Minor reformatting.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Derive_Subprograms): An interface primitive operation
|
||
that is a renaming must be derived like any other primitive operation,
|
||
the renamed operation is not relevant to the derivation.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_aux.ads: Add comment for Is_Inherently_Limited_Type.
|
||
* checks.adb: Minor reformatting.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add section on intent of style checking options.
|
||
|
||
2010-09-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* xref_lib.adb (Get_Full_Type): Fix handling of 'a' char.
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb: Improve error message on derivation from class-wide type
|
||
|
||
2010-09-10 Steve Baird <baird@adacore.com>
|
||
|
||
* gnat1drv.adb (Adjust_Global_Switches): Enable Expression_With_Actions
|
||
generation when Generate_SCIL is True.
|
||
|
||
2010-09-10 Geert Bosch <bosch@adacore.com>
|
||
|
||
* gnatlink.adb (Check_ Existing_Executable): New procedure for checking
|
||
validity of executable name and removing any existing executable
|
||
(Gnatlink): Call Check_Existing_Executable.
|
||
|
||
2010-09-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-tporft.adb, s-taskin.ads (Register_Foreign_Thread): Move
|
||
initialization of Task_Alternate_Stack here, cleaner since in case of
|
||
ranvescar, Restricted_Ada_Task_Control_Block is not initialized
|
||
implicitly.
|
||
|
||
2010-09-10 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* s-fileio.adb, a-dirval.adb: Minor reformatting.
|
||
|
||
2010-09-10 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-util.adb (Executable_Of): Fix CE when the project does not
|
||
contain a Builder package.
|
||
|
||
2010-09-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-ext.adb (Initialize_Project_Path): Add <prefix>/lib/gpr/<target>
|
||
to the project path, if Prefix and Target_Name are defined.
|
||
* prj-tree.ads (Project_Node_Tree_Data): New component Target_Name
|
||
|
||
2010-09-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* checks.adb (Ensure_Valid): If the expression is a boolean expression
|
||
or short-circuit operation, do no emit a validity check: only the
|
||
elementary operands of the expression need checking.
|
||
|
||
2010-09-10 Ben Brosgol <brosgol@adacore.com>
|
||
|
||
* gnat_rm.texi: Document Short_Descriptors.
|
||
|
||
2010-09-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-taprop-linux.adb, s-taskin.ads (Task_Alternate_Stack): Default
|
||
initialize to Null_Address.
|
||
(Enter_Task): Do not set up an alternate stack for foreign threads.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.adb (Short_Descriptors): New flag
|
||
(Short_Descriptors_Config): New flag
|
||
* opt.ads (Short_Descriptors): New flag
|
||
(Short_Descriptors_Config): New flag
|
||
* par-prag.adb: Add dummy entry for Short_Descriptors pragma
|
||
* sem_prag.adb (Set_Mechanism_Value): Deal with Short_Descriptors.
|
||
(Analyze_Pragma): Implement Short_Descriptors pragma
|
||
* snames.ads-tmpl: Add entry for Short_Descriptors pragma
|
||
|
||
2010-09-10 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-util.adb, prj-util.ads (Executable_Of): Take into account the
|
||
project's Executable_Suffix.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-pehage.ads: Minor reformatting
|
||
|
||
* gnat_ugn.texi: Clarifying comment on -gnatyc
|
||
* exp_ch6.adb (Expand_N_Subprogram_Body): Reset Is_Pure if limited
|
||
arguments.
|
||
|
||
2010-09-10 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* Make-generated.in (gnat.hlp): New rule.
|
||
|
||
2010-09-10 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-util.adb, prj-util.ads (Executable_Of): New parameter
|
||
Include_Suffix.
|
||
|
||
2010-09-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.adb: Minor code cleanup: Add assertion to
|
||
Set_Corresponding_Protected_Entry.
|
||
|
||
2010-09-10 Bob Duff <duff@adacore.com>
|
||
|
||
* g-pehage.ads, g-pehage.adb (Produce): Add a new flag to allow sending
|
||
the output to standard output.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add documentation for new gnatmake switch
|
||
--create-map-file.
|
||
* make.adb (Map_File): New global variable to store the value of switch
|
||
--create-map-file.
|
||
(Gnatmake): Add switch -M to gnatlink if switch --create-map-file has
|
||
been specified.
|
||
(Scan_Make_Arg): Recognize switch --create-map-file
|
||
* makeutl.ads (Create_Map_File_Switch): New constant string for new
|
||
gnatmake and gprbuild switch --create-map-file.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sinput-p.ads: Minor comment update.
|
||
|
||
2010-09-09 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-tpobop.adb, s-taenca.adb (Wait_For_Completion_With_Timeout): Reset
|
||
Entry_Call.State if needed so that the call is marked as cancelled by
|
||
Check_Pending_Actions_For_Entry_Call.
|
||
(Timed_Protected_Entry_Call): Adjust calls to Defer/Under_Abort, since
|
||
this procedure may be called from a controlled operation
|
||
(Initialize/Finalize).
|
||
|
||
2010-09-09 Vadim Godunko <godunko@adacore.com>
|
||
|
||
* impunit.adb: Correct spelling of package's name in the comment.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnatcmd.adb, gnatlink.adb, sem_ch12.adb, sem_eval.adb, sinput-p.adb:
|
||
Minor reformatting
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* impunit.adb: Add entry for a-izteio.
|
||
* checks.adb: Add comment.
|
||
* debug.adb, exp_disp.adb: Minor reformatting.
|
||
* exp_dbug.ads: Minor reformatting throughout (pack block comments).
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_eval.adb (Is_Same_Value): Two occurrences of the same
|
||
discriminant cannot be assumed to be the same value because they may
|
||
refer to bounds of a component of two different instances of a
|
||
discriminated type.
|
||
|
||
2010-09-09 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* checks.adb (Apply_Arithmetic_Overflow_Check): When converting the
|
||
operands of an operator to the type of an enclosing conversion, rewrite
|
||
the operator so the conversion can't be flagged as redundant.
|
||
Remove useless assignments to Typ and Rtyp.
|
||
|
||
2010-09-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnat_ugn.texi: Fix another long line.
|
||
|
||
2010-09-09 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_warn.adb (Output_Reference_Error): Don't warn for renames read
|
||
but never assigned.
|
||
|
||
2010-09-09 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* a-convec.adb, a-coinve.adb (Clear, Delete, Delete_Last, Finalize,
|
||
Merge, Insert, Insert_Space, Move, Reserve_Capacity, Generic_Sorting,
|
||
Replace_Element, Reverse_Elements, Swap): Change exception message to
|
||
correctly indicate kind of tampering (cursor or element).
|
||
* a-cdlili.adb, a-cidlli.adb (Clear, Delete, Delete_First, Delete_Last,
|
||
Merge, Generic_Sorting, Insert, Move, Reverse_Elements, Splice,
|
||
Swap_Links, Replace_Element, Swap): Ditto.
|
||
* a-coorse.adb, a-ciorse.adb (Include, Replace, Replace_Element): Ditto
|
||
* a-coorma.adb, a-ciorma.adb (Include, Replace, Replace_Element): Ditto
|
||
* a-coormu.adb, a-ciormu.adb (Replace_Element): Ditto
|
||
* a-chtgke.adb (Delete_Key_Sans_Free, Generic_Conditional_Insert,
|
||
Generic_Replace_Element): Ditto
|
||
* a-chtgop.adb (Clear, Move, Reserve_Capacity): Ditto
|
||
* a-cohama.adb, a-cihama.adb (Delete, Include, Replace,
|
||
Replace_Element): Ditto.
|
||
* a-cohase.adb, a-cihase.adb (Delete, Difference, Intersection,
|
||
Symmetric_Difference, Union, Include, Replace): Ditto
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sprint.adb (Write_Id): If the parent node is an expanded name, check
|
||
that its entity_or_associated_node is an entity before writing it out.
|
||
* exp_disp.adb (Make_Tags); if a type is declared in C++ and has no
|
||
constructors, there is no need for a dispatch table pointer because the
|
||
table is fully inherited from the C++ code.
|
||
|
||
2010-09-09 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* projects.texi: Fix wrong identifiers on package end lines in project
|
||
files examples.
|
||
* exp_ch6.adb: Minor reformatting.
|
||
|
||
2010-09-09 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* gnatcmd.adb, vms_conv.ads: Extract Command_Type.
|
||
|
||
2010-09-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnat_ugn.texi: Fix description of -O3 optimization level.
|
||
|
||
2010-09-09 Yannick Moy <moy@adacore.com>
|
||
|
||
* a-cihama.adb, a-cohama.adb: Fix comments.
|
||
|
||
2010-09-09 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* i-cexten.ads: Add comments.
|
||
(Signed_128): New type, used by some C bindings.
|
||
* debug.adb: Update comment.
|
||
|
||
2010-09-09 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi: For ASIS tools (gnatpp, gnatcheck, gnatelim,
|
||
gnatmetric and gnatstub) add a note that '-gnat05' should be used if
|
||
the tool should process Ada 2005 sources.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Remove_Parent): If the scope containing the child
|
||
instance is a block, examine the enclosing scope to determine if it is
|
||
a parent instance.
|
||
|
||
2010-09-09 Doug Rupp <rupp@adacore.com>
|
||
|
||
* sem_prag.adb (pragma Ident): Pass --identification= vice
|
||
IDENTIFICATION=
|
||
* gnatlink.adb (Linker_Options): Look for --identification= vice
|
||
IDENTIFICATION=
|
||
|
||
2010-09-09 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* exp_attr.adb (Expand_N_Attribute_Reference, case Attribute_Old): When
|
||
inserting and analyzing the object declaration for the temporary object
|
||
created to hold a 'Old value, push the scope for the subprogram where
|
||
the object is inserted, so that its Scope (and that of related objects)
|
||
will be set properly.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.adb (Get_Object_Directory): Return object directory display name
|
||
* adaint.c (__gnat_get_file_names_case_sensitive): When environment
|
||
variable GNAT_FILE_NAME_CASE_SENSITIVE has a value of "0" or "1",
|
||
return this value, otherwise return the default for the platform.
|
||
|
||
2010-09-09 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update
|
||
dependencies. Remove handling of gnatlbr.
|
||
Do not remove s-stratt-xdr for the run-time when installing.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_attr.adb: Minor reformatting.
|
||
|
||
2010-09-09 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* socket.c (__gnat_socket_ioctl): On Darwin, the req parameter is an
|
||
unsigned long, not an int.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb, mlib-prj.adb, prj.adb, prj-nmsc.adb, mlib-tgt.adb,
|
||
prj-conf.adb, prj-env.adb: Use Display_Name instead of Name whenever
|
||
we are not checking for equality of path or file names.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_util.adb (Remove_Side_Effects): If the expression is a packed
|
||
array reference, reset the Analyzed flag so that it is properly
|
||
expanded when the resulting object declaration is analyzed.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* sinput-p.adb (Source_File_Is_Subunit): Return False if X is
|
||
No_Source_File.
|
||
|
||
2010-09-09 Ramon Fernandez <fernandez@adacore.com>
|
||
|
||
* sysdep.c: The wrSbc8548 BSP in MILS doesn't know anything about the
|
||
VX_SPE_TASK option, so disable it.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb (Walk_Library_Items): Traverse context of subunits of the
|
||
main unit.
|
||
(Is_Subunit_Of_Main): Handle null nodes properly.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch2.adb: Update comments.
|
||
|
||
2010-09-09 Ben Brosgol <brosgol@adacore.com>
|
||
|
||
* gnat_rm.texi: Minor wordsmithing of section on pragma Ordered.
|
||
|
||
2010-09-09 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* par-ch2.adb (Scan_Pragma_Argument_Association): In CodePeer mode,
|
||
do not generate an error for compatibility with legacy code.
|
||
ignored when generating SCIL.
|
||
* sem_attr.adb (Resolve_Attribute): Ignore AI-229 in CodePeer mode.
|
||
|
||
2010-09-09 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* s-strxdr.adb, gnat_rm.texi, s-stratt-xdr.adb, s-stratt.ads: Rename
|
||
s-strxdr.adb to s-stratt-xdr.adb
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* ali-util.adb (Obsolescent_Check): Removed.
|
||
* gprep.adb (Obsolescent_Check): Removed.
|
||
Remove Obsolescent_Check parameter in Scng instantiation
|
||
* prj-err.adb (Obsolescent_Check): Removed.
|
||
* prj-err.ads (Obsolescent_Check): Removed.
|
||
Remove Obsolescent_Check parameter in Scng instantiation
|
||
* scans.ads (Based_Literal_Uses_Colon): New flag
|
||
* scn.adb (Obsolscent_Check_Flag): Removed
|
||
(Obsolscent_Check): Removed
|
||
(Set_Obsolescent_Check): Removed
|
||
(Post_Scan): Add handling for obsolescent features
|
||
* scn.ads (Obsolscent_Check): Removed
|
||
(Set_Obsolescent_Check): Removed
|
||
(Post_Scan): Can no longer be inlined
|
||
Remove Obsolescent_Check from instantiation of Scng
|
||
* scng.adb (Nlit): Set Based_Literal_Uses_Colon
|
||
(Nlit): Remove handling of obsolescent check
|
||
(Scan, case '%'): Remove handling of obsolescent check
|
||
(Scan, case '|'): Call Post_Scan
|
||
(Scan, case '!'): Remove handling of obsolescent check, call Post_Scan
|
||
* scng.ads Remove Obsolescent_Check argument from Scng generic
|
||
(Post_Scan): Now called for Tok_Vertical_Bar
|
||
* sinput-l.adb: Remove calls to Set_Obsolescent_Check
|
||
|
||
2010-09-09 Doug Rupp <rupp@adacore.com>
|
||
|
||
* gnatlbr.adb: Removed.
|
||
* gnat_rm.texi, ug_words, gnat_ugn.texi: Remove mention of gnatlbr.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Type_Conversion): Catch more cases of redundant
|
||
conversions.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatlbr.adb: Remove redundant conversions.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-proc.adb: Minor comment spelling error fix.
|
||
* osint.ads (Env_Vars_Case_Sensitive): Use function
|
||
Get_Env_Vars_Case_Sensitive, not Get_File_Names_Case_Sensitive to
|
||
compute value.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Equality_Op): Implement Ada2012 rule for
|
||
resolution of conditional expressions whose dependent expressions are
|
||
anonymous access types.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-ststio.adb: Minor code reorganization.
|
||
* s-direio.adb, prj.adb, prj-nmsc.adb, sem_type.adb: Remove redundant
|
||
conversion.
|
||
* types.ads: Minor reformatting.
|
||
* binde.adb, vms_conv.adb, gnatls.adb, s-strxdr.adb, uintp.adb: Remove
|
||
redundant conversions.
|
||
* output.adb: Minor reformatting.
|
||
* sem_ch8.adb (Find_Type): Test for redundant base applies to user
|
||
types.
|
||
* opt.ads: Add pragma Ordered for Verbosity_Level.
|
||
* prj.ads: Add pragma Ordered for type Verbosity.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* osint.adb (Canonical_Case_File_Name): Use procedure To_Lower in
|
||
System.Case_Util
|
||
(Canonical_Case_Env_Var_Name): Ditto
|
||
|
||
2010-09-09 Bob Duff <duff@adacore.com>
|
||
|
||
* g-pehage.adb (Allocate): Initialize the allocated elements of IT.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* cstand.adb: Mark Boolean and Character types as Ordered
|
||
* einfo.adb (Has_Pragma_Ordered): New flag
|
||
* einfo.ads (Has_Pragma_Ordered): New flag
|
||
* g-calend.ads: Mark Day_Name as Ordered
|
||
* opt.ads: Mark Ada_Version_Type as Ordered
|
||
(Warn_On_Unordered_Enumeration_Type): New flag
|
||
* par-prag.adb: Add procdessing for pragma Ordered
|
||
* s-ficobl.ads (Read_File_Mode): New subtype
|
||
* s-fileio.adb: Use Read_File_Mode instead of explicit ranges
|
||
* s-taskin.ads: Mark Entry_Call_State as ordered
|
||
* sem_ch3.adb (Build_Derived_Enumeration_Type): Inherit
|
||
Has_Pragma_Ordered.
|
||
* sem_ch6.ads: Mark Conformance_Type as Ordered
|
||
* sem_prag.adb: Implement pragma Ordered
|
||
* sem_res.adb (Bad_Unordered_Enumeration_Reference): New function
|
||
(Resolve_Comparison_Op): Diagnose unordered comparison
|
||
(Resolve_Range): Diagnose unordered range
|
||
* sem_warn.adb (Warn_On_Unordered_Enumeration_Type): New flag (from
|
||
-gnatw.u/U)
|
||
* snames.ads-tmpl: Add entry for pragma Ordered
|
||
* style.ads (Check_Enumeration_Subrange): Removed
|
||
* styleg.adb (Check_Enumeration_Subrange): Removed
|
||
* styleg.ads (Check_Enumeration_Subrange): Removed
|
||
* stylesw.adb: Remove handling of -gnatyE switch
|
||
* stylesw.ads: (Style_Check_Enumeration_Subranges): Removed
|
||
* vms_data.ads: Remove -gnatyE entries
|
||
Add -gnatw.u entries
|
||
* ug_words: Entries for -gnatw.u and -gnatw.U
|
||
* gnat_ugn.texi: Document -gnatw.u/-gnatw.U switches
|
||
* gnat_rm.texi: Document pragma Ordered.
|
||
* s-tasren.adb: Avoid unnecessary comparison on unordered enumeration.
|
||
* s-tpobop.adb: Remove comparison on unordered enumeration type.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* adaint.c: New function __gnat_get_env_vars_case_sensitive, returns 0
|
||
for VMS and Windows, and 1 for all other platforms.
|
||
* adaint.h: New function __gnat_get_env_vars_case_sensitive
|
||
* osint.ads, osint.adb (Canonical_Case_Env_Var_Name): New procedure.
|
||
* prj-ext.adb (Add): Call Canonical_Case_Env_Var_Name instead of
|
||
Canonical_Case_File_Name, as we are dealing with environment variables,
|
||
not files.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.adb: Minor reformatting
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* vms_data.ads: Add documentation for S_Make_Single.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Same_Object): include formal parameters.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Queue): New package implementing a new impementation of the
|
||
queue, taking into account the new switch --single-compile-per-obj-dir.
|
||
* makeutl.ads (Single_Compile_Per_Obj_Dir_Switch): New constant String
|
||
for gnatmake and gprbuild new switch --single-compile-per-obj-dir.
|
||
* opt.ads (One_Compilation_Per_Obj_Dir): New Boolean flag, defauted to
|
||
False.
|
||
* switch-m.adb (Scan_Make_Switches): Take into account new gnatmake
|
||
switch --single-compile-per-obj-dir.
|
||
* vms_data.ads: Add qualifier SINGLE_COMPILE_PER_OBJ_DIR for gnatmake
|
||
switch --single-compile-per-obj-dir.
|
||
* gnat_ugn.texi: Add documentation for new gnatmake switch
|
||
--single-compile-per-obj-dir.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* einfo.adb, einfo.ads: Clarify use of Corresponding_Protected_Entry.
|
||
|
||
2010-09-09 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Is_Progenitor): Relocated to sem_type.
|
||
(Replace_Type): Code cleanup.
|
||
* sem_type.ads, sem_type.adb (Is_Progenitor): Relocated from sem_ch3
|
||
|
||
2010-09-09 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch8.adb: Minor reformatting.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch9.adb, einfo.adb, einfo.ads: New attribute
|
||
Corresponding_Protected_Entry.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch3.adb (Build_Untagged_Equality): Do not set alias of implicit
|
||
inequality, it is always rewritten as the negation of the corresponding
|
||
equality operation.
|
||
* exp_ch8.adb (Expand_N_Subprogram_Renaming): If the subprogram renames
|
||
the predefined equality of an untagged record, create a body at the
|
||
point of the renaming, to capture the current meaning of equality for
|
||
the type.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem.adb, sem_warn.adb: Minor reformatting.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb: Improve error message on untagged equality.
|
||
* sem.adb (Semantics): Include subprogram bodies that act as spec.
|
||
|
||
2010-09-09 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch13.adb, exp_ch13.adb: Undo previous change, unneeded.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch13.adb, sem_ch6.adb, exp_ch3.adb: Minor reformatting.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.adb (Is_Aggregate_Type): New function.
|
||
* einfo.ads (Aggregate_Kind): New enumeration subtype
|
||
(Is_Aggregate_Type): New function.
|
||
* sem_type.adb (Is_Array_Class_Record_Type): Removed, replaced by
|
||
Is_Aggregate_Typea.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch11.adb, frontend.adb, sem_attr.adb, sem_ch10.adb, sem_ch3.adb,
|
||
sem_ch4.adb, sem_ch9.adb, sem_res.adb: Use Restriction_Check_Needed
|
||
where appropriate.
|
||
* restrict.ads, restrict.adb: Ditto.
|
||
(Restriction_Check_Needed): New function
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch9.ads (Find_Master_Scope): New function, extracted from
|
||
Build_Master_Entity, to find the proper scope for the master entity of
|
||
a type that may contain tasks, in the presence of transient scopes.
|
||
* exp_ch9.adb (Build_Master_Entity) Use new function.
|
||
* exp_ch3.adb (Build_Class_Wide_Master): ditto.
|
||
|
||
2010-09-09 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-attr.adb: Add new attributes Leading_Library_Options and
|
||
Linker'Leading_Switches.
|
||
* snames.ads-tmpl: Add new standard names Leading_Library_Options and
|
||
Leading_Switches.
|
||
|
||
2010-09-09 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Derive_Subprogram): The code that checks if a
|
||
dispatching primitive covers some interface primitive is incomplete.
|
||
Replace such code by the invocation of a new subprogram that provides
|
||
this functionality.
|
||
* sem_ch6.ads (Is_Interface_Conformant): Add missing documentation.
|
||
* sem_ch6.adb (Check_Missing_Return): Minor reformating
|
||
(Check_Convention): Complete if-statement conditition when reporting
|
||
errors (to avoid assertion failure).
|
||
* sem_ch13.adb (Make_Null_Procedure_Specs): This routine was previously
|
||
located in exp_ch3. Relocated inside Analyze_Freeze_Entity.
|
||
(Analyze_Freeze_Entity): Invoke routine that adds the spec of non
|
||
overridden null interface primitives.
|
||
* sem_type.adb (Is_Ancestor): If the parent of the partial view of a
|
||
private type is an interface then use the parent of its full view to
|
||
climb to its ancestor type.
|
||
* sem_disp.ads, sem_disp.adb (Covers_Some_Interface): New subprogram.
|
||
(Check_Dispatching_Operation): Extend assertion to handle wrappers of
|
||
null interface primitives.
|
||
(Is_Null_Interface_Primitive): New subprogram.
|
||
* exp_ch3.adb (Make_Null_Procedure_Specs): Removed.
|
||
(Expand_Freeze_Record_Type): Do not generate specs of null interface
|
||
subprograms because they are now generated by Analyze_Freeze_Entity.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-calfor.adb, sem_ch3.adb: Minor reformatting.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* bindgen.adb (Gen_Restrictions_Ada): Avoid explicit enumeration ranges
|
||
(Gen_Restrictions_C): Avoid explicit enumeration ranges
|
||
(Set_String_Replace): New procedure
|
||
* casing.ads (Known_Casing): New subtype declaration
|
||
* prj-attr.ads (All_Case_Insensitive_Associative_Array): New subtype
|
||
declaration
|
||
* prj-dect.adb (Parse_Attribute_Declaration): Avoid enumeration range
|
||
* prj-nmsc.adb (Check_Naming): Avoid unnecessary enumeration range
|
||
* prj-strt.adb (Attribute_Reference): Avoid enumeration range test
|
||
* prj.adb (Known_Casing): Moved to Casing spec (avoid enum range)
|
||
* sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Avoid enumeration
|
||
ranges.
|
||
* sem_res.adb (Resolve_Range): Check for enumeration subrange style
|
||
rule.
|
||
* sem_type.adb (Is_Array_Class_Record_Type): New.
|
||
* style.ads (Check_Enumeration_Subrange): New procedure
|
||
* styleg.adb (Check_Enumeration_Subrange): New procedure
|
||
* styleg.ads (Check_Enumeration_Subrange): New procedure
|
||
* stylesw.adb Add handling for Style_Check_Enumeration_Subranges
|
||
* stylesw.ads (Style_Check_Enumeration_Subranges): New flag
|
||
* usage.adb: Add line for -gnatyE
|
||
* vms_data.ads: Add entries for [NO]ENUMERATION_RANGES
|
||
Add missing entry for NOBOOLEAN_OPERATORS
|
||
* gnat_ugn.texi: Add documentation for -gnatyE
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* namet.adb (Initialize): Is now a dummy procedure
|
||
(Reinitialize): New procedure
|
||
Call Reinitialize from package initialization
|
||
* namet.ads (Initialize): Is now a dummy procedure
|
||
(Reinitialize): New procedure
|
||
* clean.adb, gnat1drv.adb, gnatbind.adb, gnatcmd.adb, gnatlink.adb,
|
||
gnatls.adb, gprep.adb, make.adb, prj-makr.adb: Remove obsolete call to
|
||
Namet.Initialize.
|
||
|
||
2010-09-09 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_elab.adb, s-os_lib.ads: Minor comment fixes.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-bitops.adb (Raise_Error): Add exception message
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch5.adb (Test_Statement_Required): Deal with Ada 2012 allowing no
|
||
null statement after label.
|
||
* sinfo.ads: Minor comment updates.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* nlists.ads, nlists.adb (In_Same_List): New function.
|
||
Use Node_Or_Entity_Id where appropriate.
|
||
* par-labl.adb, sem_ch6.adb, sem_type.adb: Use In_Same_List.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* restrict.ads, restrict.adb (Check_Wide_Character_Restriction): New
|
||
procedure.
|
||
* sem_ch3.adb: Use Check_Wide_Character_Restriction
|
||
(Enumeration_Type_Declaration): Check violation of No_Wide_Characters
|
||
* sem_ch8.adb (Find_Direct_Name): Check violation of No_Wide_Characters
|
||
(Find_Expanded_Name): Check violation of No_Wide_Characters
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch5.adb: Minor reformatting.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* prj-env.adb: Minor code reorganization.
|
||
* par-ch3.adb: Minor reformatting.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch9.adb (Build_Activation_Chain_Entity): The construct enclosing
|
||
a task declaration can be an entry body.
|
||
|
||
2010-09-09 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Make_DT): Decorate as "static" variables containing
|
||
tags of library level tagged types.
|
||
(Make_Tags): Disable backend optimizations about aliasing for
|
||
declarations of access to dispatch tables.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Reset_Entity): If the entity is an itype created as a
|
||
subtype for a null-excluding access type, recover the original
|
||
subtype_mark to get the proper visibility on the original name.
|
||
|
||
2010-09-09 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch3.adb (Build_Untagged_Equality): For Ada2012, new procedure to
|
||
create the primitive equality operation for an untagged record. The
|
||
operation is the predefined equality if no record component has a
|
||
user-defined equality, or if there is a user-defined equality for the
|
||
type as a whole, or when the type is derived and it has an inherited
|
||
equality. Otherwise the body of the operations is built as for tagged
|
||
types.
|
||
(Expand_Freeze_Record_Type): Call Build_Untagged_Equality when needed.
|
||
(Make_Eq_Body): New function to create the expanded body of the
|
||
equality operation for tagged and untagged records. In both cases the
|
||
operation composes, and the primitive operation of each record
|
||
component is used to generate the equality function for the type.
|
||
* exp_ch4.adb (Expand_Composite_Equality): In Ada2012, if a component
|
||
has an abstract equality defined, replace its call with a
|
||
Raise_Program_Error.
|
||
* sem_ch6.adb (New_Overloaded_Entity): if Ada2012, verify that a
|
||
user-defined equality operator for an untagged record type does not
|
||
happen after type is frozen, and appears in the visible part if partial
|
||
view of type is not limited.
|
||
|
||
2010-09-09 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* gnatlbr.adb: Make Create_Directory more portable: use __gnat_mkdir.
|
||
|
||
2010-09-09 Bob Duff <duff@adacore.com>
|
||
|
||
* gnat_ugn.texi: Remove incorrect statement about -E being the default.
|
||
|
||
2010-09-09 Pascal Obry <obry@adacore.com>
|
||
|
||
* gnat_ugn.texi: Update doc on windows related topics.
|
||
|
||
2010-09-09 Geert Bosch <bosch@adacore.com>
|
||
|
||
* s-fatgen.adb: Update comments.
|
||
|
||
2010-09-09 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch4.adb (Box_Error): New procedure.
|
||
|
||
2010-09-09 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem.adb: Minor reformatting.
|
||
|
||
2010-09-09 Pascal Obry <obry@adacore.com>
|
||
|
||
* prj-env.adb: Style fix, use /and then/ and /or else/.
|
||
* gnat_ugn.texi: Fix typos.
|
||
|
||
2010-09-03 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
PR ada/45499
|
||
* gcc-interface/misc.c (gnat_init_options): Allow options with
|
||
empty canonical form. Generate a single save_argv element from -I
|
||
options.
|
||
|
||
2010-08-30 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (gnat_pushdecl): Remove test for PARM_DECLs.
|
||
Attach fake PARM_DECLs to the topmost block of the function.
|
||
|
||
2010-08-30 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (call_to_gnu): Also force the return slot opt
|
||
for the call to a function whose return type was unconstrained.
|
||
|
||
2010-08-30 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* gcc-interface/decl.c (FOREIGN_FORCE_REALIGN_STACK): New macro,
|
||
replacement for FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN.
|
||
(gnat_to_gnu_entity) <case ..., E_Procedure>: Use it.
|
||
|
||
2010-08-21 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* tracebak.c: Fix typo in comment.
|
||
|
||
2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
|
||
* gcc-interface/trans.c: Likewise.
|
||
* gcc-interface/utils.c: Likewise.
|
||
|
||
2010-08-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5.
|
||
|
||
2010-08-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch8.adb, sem_ch8.ads: Change name Write_Scopes to ws.
|
||
* sem_util.adb: Minor reformatting.
|
||
|
||
2010-08-10 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_aggr.adb (Resolve_Extension_Aggregate): Warn on the use of C++
|
||
constructors that leave the object partially initialized.
|
||
* exp_atag.ads, exp_atags.adb (Build_Inherit_CPP_Prims): New subprogram
|
||
that copies from parent of Typ the dispatch table slots of inherited
|
||
C++ primitives. It handles primary and secondary dispatch tables.
|
||
* einfo.adb (Related_Type): Moved from Node26 to Node27. Required to
|
||
use this attribute with E_Variable entities.
|
||
(Set_Is_Tag): Relax assertion to allow its use with variables that
|
||
store tags.
|
||
(Set_Related_Type): Relax assertion to allow its use with variables
|
||
that store the tag of a C++ class.
|
||
(Write_26_Field_Name): Remove Related_Type.
|
||
(Write_27_Field_Name): Add Related_Type.
|
||
* einfo.ads (Related_Type): Moved from Node26 to Node27. Available also
|
||
with E_Variable entities.
|
||
* sem_prag.adb (CPP_Constructor): Warn on duplicated occurrence of this
|
||
pragma.
|
||
* sem_util.adb (Search_Tag): Add missing support for CPP types.
|
||
(Enclosing_CPP_Parent): New subprogram.
|
||
(Has_Suffix): New subprogram.
|
||
* sem_util.ads (Enclosing_CPP_Parent): New subprogram that returns the
|
||
closest ancestor of a type that is a C++ type.
|
||
(Has_Suffix): New subprogram. Used in assertions to check the suffix of
|
||
internal entities.
|
||
* sem_attr.adb (Analyze_Access_Attribute): Check wrong use of current
|
||
instance in derivations of C++ types.
|
||
* exp_tss.adb (CPP_Init_Proc): New subprogram.
|
||
(Is_CPP_Init_Proc): New subprogram.
|
||
(Set_TSS): Handle new C++ init routines.
|
||
* exp_tss.ads (TSS_CPP_Init): New TSS name. For initialization of C++
|
||
dispatch tables.
|
||
(CPP_Init_Proc): New subprogram.
|
||
(Is_CPP_Init_Proc): New subprogram.
|
||
* exp_disp.adb (CPP_Num_Prims): New subprogram.
|
||
(Has_CPP_Constructors): New subprogram.
|
||
(Make_Secondary_DT, Make_DT): For derivations of CPP types, do not
|
||
initialize slots located in the C++ part of the dispatch table.
|
||
(Make_Tags): For CPP types declare variables used by the IP routine to
|
||
store the C++ tag values after the first invocation of the C++
|
||
constructor.
|
||
(Build_CPP_Init_DT): New subprogram.
|
||
(Set_CPP_Constructors): New implementation that builds an IP for each
|
||
CPP constructor. These IP are wrappers of the C++ constructors that,
|
||
after the first invocation of the constructor, read the C++ tags from
|
||
the object and save them locally. These copies of the C++ tags are used
|
||
by the IC routines to initialize tables of Ada derivations of CPP
|
||
types.
|
||
(Write_DT): Indicate what primitives are imported from C++
|
||
* exp_disp.ads (CPP_Num_Prims): New subprogram.
|
||
(Has_CPP_Constructors): New subprogram.
|
||
* exp_aggr.adb (Build_Record_Aggr_Code): For derivations of C++ types
|
||
invoke the IC routine to inherit the slots of the parents.
|
||
* sem_ch13.adb (Analyze_Freeze_Entity): Add new warnings on CPP types.
|
||
* exp_ch3.adb (Is_Variable_Size_Array): New subprogram.
|
||
(Is_Variable_Size_Record): Factorize code calling
|
||
Is_Variable_Size_Array.
|
||
(Build_CPP_Init_Procedure): New subprogram that builds the tree
|
||
corresponding to the procedure that initializes the C++ part of the
|
||
dispatch table of an Ada tagged type that is a derivation of a CPP
|
||
type.
|
||
(Build_Init_Procedure): Adding documentation plus code reorganization
|
||
to leave more clear the construction of the IP with C++ types.
|
||
(Expand_Freeze_Record_Type): Delay call to Set_CPP_Constructors because
|
||
it cannot be called after Make_Tags has been invoked.
|
||
(Inherit_CPP_Tag): Removed.
|
||
(Init_Secondary_Tags): For derivations of CPP types, warn on tags
|
||
located at variable offset.
|
||
* freeze.ads: Minor reformating.
|
||
* sem_ch8.adb (Write_Scopes): Add pragma export. Required to have it
|
||
available in gdb.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-08-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-chahan.ads: Add comments on handling of obsolescent entries.
|
||
* opt.ads: Add Ada_2005 and Ada_2012 renamings for versions.
|
||
* restrict.adb (Check_Obsolescent_2005_Entity): New procedure.
|
||
* restrict.ads (Check_Obsolescent_2005_Entity): New procedure.
|
||
* sem_attr.adb (Analyze_Access_Attribute): Call
|
||
Check_Obsolescent_2005_Entity to check for access to obsolescent
|
||
Ada.Characters.Handling subprogram.
|
||
(Analyze_Attribute, case Class): Applying Class to untagged incomplete
|
||
type is obsolescent in Ada 2005.
|
||
(Analyze_Attribute, case Constrained): Better placement of flag when
|
||
flagged as obsolescent feature.
|
||
(Analyze_Attribute, case Storage_Size): Use with tasks is obsolescent
|
||
* sem_ch10.adb (Analyze_With_Clause): With of renamings such as Text_IO
|
||
is an obsolescent feature.
|
||
* sem_ch11.adb (Analyze_Raise_Statement): Numeric_Error is obsolescent
|
||
feature.
|
||
* sem_ch8.adb (Analyze_Subprogram_Renaming): Call
|
||
Check_Obsolescent_2005_Entity to check for renaming obsolete
|
||
Ada.Characters.Handling subprogram.
|
||
* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Check
|
||
for obsolescent restrictions in Ada 2005.
|
||
(Analyze_Pragma, case Suppress): Entity arg is obsolescent in Ada 2005
|
||
(Analyze_Pragma, case Interface): Interface is obsolescent in Ada 2005
|
||
* sem_res.adb (Resolve_Call): Call Check_Obsolescent_2005_Entity to
|
||
check for obsolescent references to Ada.Characters.Handling subprograms
|
||
|
||
2010-08-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.adb, einfo.ads: Fix bad -gnatdt output for incomplete type.
|
||
|
||
2010-08-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.ads: Add VMS table entries for 2005, 12, 2012 switches
|
||
* par-ch4.adb: Change wording of Ada 2012 messages
|
||
* vms_data.ads: Add VMS entries for /2005, /12, /2012
|
||
|
||
2010-08-10 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-suenco.adb (Convert): Fix bug in UTF-16 to UTF-8 conversion for
|
||
codes in the range 16#80#..16#7FF#.
|
||
* sem_ch10.adb: Minor reformatting.
|
||
|
||
2010-08-10 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat1drv.adb (Scan_Front_End_Switches): Always perform semantics and
|
||
generate ali files in CodePeer mode, so that a gnatmake -c -k will
|
||
proceed further when possible
|
||
* freeze.adb (Freeze_Static_Object): Fix thinko. Do not generate error
|
||
messages when ignoring representation clauses (-gnatI).
|
||
|
||
2010-08-10 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Selected_Component): Do not attempt to
|
||
constant-fold discriminant reference if the constraint is an object
|
||
with non-static expression. Expression may contain volatile references
|
||
in the presence of renamings.
|
||
|
||
2010-08-10 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-proc.adb (Get_Attribute_Index): If Index is All_Other_Names,
|
||
returns Index.
|
||
* prj-strt.adb (Attribute_Reference): Recognize 'others' as a valid
|
||
index for an associative array where it is allowed.
|
||
|
||
2010-08-10 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_attr.adb: Add comments.
|
||
|
||
2010-08-10 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* adaint.c (__gnat_get_file_names_case_sensitive): return 0 on darwin.
|
||
|
||
2010-08-09 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/utils.c (gnat_poplevel): Use blocks_nreverse.
|
||
|
||
2010-08-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (build_vms_descriptor32): Fix formatting.
|
||
(build_vms_descriptor): Likewise.
|
||
|
||
2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/utils.c (make_descriptor_field): Add tree parameter.
|
||
(build_vms_descriptor32): Adjust calls to it for new parameter.
|
||
(build_vms_descriptor): Likewise.
|
||
|
||
2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/decl.c (rec_variant): Declare. Declare a VEC of it.
|
||
(build_variant_list): Take and return a VEC instead of a tree.
|
||
(create_variant_part_from): Take a VEC instead of a tree for
|
||
variant_list. Adjust accordingly.
|
||
(gnat_to_gnu_entity): Adjust for changes to previous functions.
|
||
|
||
2010-08-07 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Use XALLOCAVEC instead
|
||
of alloca.
|
||
(components_to_record): Likewise.
|
||
* gcc-interface/trans.c (gnat_to_gnu): Likewise.
|
||
* gcc-interface/utils.c (max_size): Likewise.
|
||
(build_vms_descriptor32): Likewise.
|
||
(build_vms_descriptor): Likewise.
|
||
|
||
2010-08-07 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/decl.c (subst_pair): Declare. Declare a VEC of it.
|
||
(build_subst_list): Return a VEC instead of a tree.
|
||
(build_variant_list): Take a VEC for subst_list. Adjust
|
||
accordingly.
|
||
(create_field_decl_from): Likewise.
|
||
(create_variant_part_from): Likewise.
|
||
(copy_and_substitute_in_size): Likewise.
|
||
(gnat_to_gnu_entity): Adjust for new interface to build_subst_list.
|
||
Free the built vector.
|
||
|
||
2010-08-06 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not build an
|
||
allocator for large imported objects.
|
||
|
||
2010-08-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat1drv.adb: Minor reformatting.
|
||
|
||
2010-08-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb (Do_Unit_And_Dependents): If some parent unit is an
|
||
instantiation, process its body before the spec of the main unit,
|
||
because it may contain subprograms invoked in the spec of main.
|
||
* einfo.ads: Add documention of delayed freeze.
|
||
|
||
2010-08-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Process_Linker): Take into account new values for
|
||
attribute Response_File_Format.
|
||
* prj.ads (Response_File_Format): New enumeration values GCC_GNU,
|
||
GCC_Object_List and GCC_Option_List.
|
||
|
||
2010-08-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Selected_Component): Do not constant-fold a
|
||
selected component that denotes a discriminant if it is the
|
||
discriminant of a component of an unconstrained record type.
|
||
|
||
2010-08-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_util.adb (Insert_Actions): If the action appears within a
|
||
conditional expression that is already analyzed, insert action further
|
||
out.
|
||
|
||
2010-08-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb: Minor reformatting.
|
||
|
||
2010-08-05 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch4.adb: Minor reformatting
|
||
* gnat1drv.adb: Minor reformatting.
|
||
Minor code reorganization (use Nkind_In).
|
||
|
||
2010-08-05 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_util.ads, exp_util.adb (Needs_Constant_Address): New predicate to
|
||
determine whether the expression in an address clause for an
|
||
initialized object must be constant. Code moved from freeze.adb.
|
||
(Remove_Side_Effects): When the temporary is initialized with a
|
||
reference, indicate that the temporary is a constant as done in all
|
||
other cases.
|
||
* freeze.adb (Check_Address_Clause): use Needs_Constant_Address.
|
||
* exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case 'Address):
|
||
If object does not need a constant address, remove side effects from
|
||
address expression, so it is elaborated at the point of the address
|
||
clause and not at the freeze point of the object, so that elaboration
|
||
order is respected.
|
||
|
||
2010-08-05 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.adb (Is_Compilable): Return False for header files of non Ada
|
||
languages.
|
||
|
||
2010-08-05 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb: The Missing_Source_Files flag also considers a missing
|
||
exec directory as a warning rather than an error.
|
||
|
||
2010-08-05 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch6.adb, gnat1drv.adb, exp_ch6.adb, sem_eval.adb: Minor
|
||
reformatting.
|
||
|
||
2010-08-05 Steve Baird <baird@adacore.com>
|
||
|
||
* exp_util.adb (Remove_Side_Effects): An access value which designates
|
||
a volatile object of a nonvolatile type is prohibited.
|
||
Do not call Make_Reference to construct a reference to such an object.
|
||
|
||
2010-08-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-suezse.adb, a-suezse.ads, a-suezen.adb, a-suezen.ads: Removed.
|
||
* a-suewse.adb, a-suewse.ads, a-suesen.adb, a-suesen.ads,
|
||
a-suewen.adb, a-suewen.ads: New files.
|
||
* Makefile.rtl, impunit.adb: Update implementation of Ada 2012 string
|
||
encoding packages.
|
||
* sem_elab.adb: Minor reformatting.
|
||
|
||
2010-08-05 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem_ch8.adb (Use_One_Type): Protect against empty scopes.
|
||
* exp_util.adb (Component_May_Be_Bit_Aligned): Prevent assert failure
|
||
in case of null Comp.
|
||
|
||
2010-08-05 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.adb, a-suewen.adb, a-suezen.adb: Minor reformatting.
|
||
|
||
2010-08-05 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Allocator): Flag errors on allocators of a
|
||
nested access type whose designated type has tasks or is a protected
|
||
object when the restrictions No_Task_Hierarchy or
|
||
No_Local_Protected_Objects apply. Add ??? comment.
|
||
* sem_ch9.adb (Analyze_Protected_Type): Give a warning when a protected
|
||
type is not a library-level type and No_Local_Protected_Objects applies.
|
||
(Analyze_Task_Type): Give a warning when a task type is not a
|
||
library-level type and No_Task_Hierarchy applies.
|
||
|
||
2010-08-05 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* sem.adb: Minor reformatting
|
||
* sem_ch4.adb (Analyze_Reference): Disable error message in CodePeer
|
||
mode, not useful.
|
||
|
||
2010-08-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c: Do not undefine IN_GCC_FRONTEND and do not
|
||
include expr.h.
|
||
(gnat_to_gnu_entity) <object>: Force address of -1 at the tree level
|
||
for the debug-only entity.
|
||
* gcc-interface/Make-lang.in (ada/decl.o): Adjust dependencies.
|
||
|
||
2010-08-03 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/lang-specs.h: Don't pass -a options.
|
||
|
||
2010-07-28 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (gnat_init_options): Ignore erroneous
|
||
options. Check canonical_option_num_elements on options copied.
|
||
|
||
2010-07-27 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (gnat_handle_option): Update prototype and
|
||
return value type. Don't check for missing arguments here.
|
||
|
||
2010-07-27 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (gnat_option_lang_mask): New.
|
||
(gnat_init_options): Update prototype. Reconstruct argv array
|
||
from decoded options.
|
||
|
||
2010-07-23 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (update_pointer_to): In the unconstrained array
|
||
case, merge the alias set of the old pointer type.
|
||
|
||
2010-07-23 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (gnat_types_compatible_p): Revert latest change
|
||
and recurse only for multidimensional array types instead.
|
||
|
||
2010-07-22 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR ada/44892
|
||
* gcc-interface/utils.c (convert): Fix thinko in test.
|
||
(unchecked_convert): When converting from a scalar type to a type with
|
||
a different size, pad to have the same size on both sides.
|
||
|
||
2010-07-22 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (gnat_types_compatible_p): Don't require strict
|
||
equality for the component type of array types.
|
||
|
||
2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/decl.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
|
||
* gcc-interface/trans.c: Likewise.
|
||
* gcc-interface/utils.c: Likewise.
|
||
* gcc-interface/utils2.c: Likewise.
|
||
|
||
2010-07-13 Laurent GUERBY <laurent@guerby.net>
|
||
|
||
PR bootstrap/44458
|
||
* gcc-interface/targtyps.c: Include tm_p.h.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-07-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gnat_gimplify_expr) <ADDR_EXPR>: Deal with
|
||
CALL_EXPR.
|
||
|
||
2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
|
||
|
||
* gcc-interface/utils.c: Include diagnostic-core.h in every file
|
||
that includes toplev.h.
|
||
|
||
2010-07-03 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>:
|
||
Branch to common code handling the alignment of discrete types.
|
||
<E_Signed_Integer_Type>: Likewise.
|
||
<E_Modular_Integer_Type>: Likewise.
|
||
|
||
2010-07-02 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/misc.c (gnat_handle_option): Do not populate gnat_argv.
|
||
(gnat_handle_option): Allocate only one element for gnat_argv.
|
||
(gnat_init): Do not populate gnat_argv.
|
||
|
||
2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
|
||
|
||
* gcc-interface/trans.c: Do not include tree-flow.h.
|
||
* gcc-interface/Make-lang.in: Adjust dependencies.
|
||
|
||
2010-06-29 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/gigi.h (gnat_build_constructor): Take a VEC instead
|
||
of a TREE_LIST. Update comment.
|
||
* gcc-interface/trans.c (gigi): Build a VEC instead of a TREE_LIST.
|
||
Adjust call to gnat_build_constructor.
|
||
(Attribute_to_gnu): Likewise.
|
||
(gnat_to_gnu): Likewise.
|
||
(pos_to_constructor): Likewise.
|
||
(extract_values): Likewise.
|
||
* gcc-interface/utils.c (build_template): Likewise.
|
||
(convert_vms_descriptor64): Likewise.
|
||
(convert_vms_descriptor32): Likewise.
|
||
(convert_to_fat_pointer): Likewise.
|
||
(convert): Likewise.
|
||
(unchecked_convert): Likewise.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
|
||
* gcc-interface/utils2.c (build_allocator): Likewise.
|
||
(fill_vms_descriptor): Likewise.
|
||
(gnat_build_constructor): Take a VEC instead of a TREE_LIST.
|
||
(compare_elmt_bitpos): Adjust for parameters being constructor_elts
|
||
instead of TREE_LISTs.
|
||
|
||
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
|
||
|
||
* gcc-interface/misc.c: Do not include except.h.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c: Include tree-flow.h.
|
||
(gnu_switch_label_stack): Delete.
|
||
(Case_Statement_to_gnu): Do not emit the goto at the end of a case if
|
||
its associated block cannot fall through. Do not emit the final label
|
||
if no cases branch to it.
|
||
* gcc-interface/Make-lang.in (ada/trans.o): Add $(TREE_FLOW_H).
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_attr.adb (Expand_Access_To_Protected_Op): When rewriting a
|
||
reference to a protected subprogram outside of the protected's scope,
|
||
ensure the corresponding external subprogram is frozen before the
|
||
reference.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_prag.adb: Fix typo in error message.
|
||
* sem.adb: Refine previous change.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* impunit.adb, a-suewen.adb, a-suewen.ads, a-suenco.adb, a-suenco.ads,
|
||
a-suezen.adb, a-suezen.ads, a-stuten.adb, a-stuten.ads, Makefile.rtl:
|
||
Implement Ada 2012 string encoding packages.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* a-stwiun-shared.adb, a-stwiun-shared.ads, a-stzunb-shared.adb,
|
||
a-stzunb-shared.ads, a-swunau-shared.adb, a-swuwti-shared.adb,
|
||
a-szunau-shared.adb, a-szuzti-shared.adb, a-strunb-shared.adb,
|
||
a-strunb-shared.ads, a-stunau-shared.adb, a-suteio-shared.adb: New
|
||
files.
|
||
* gcc-interface/Makefile.in: Enable use of above files.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch13.adb (Check_Constant_Address_Clauses): Do not check legality
|
||
of address clauses if if Ignore_Rep_Clauses is active.
|
||
* freeze.adb (Check_Address_Clause): If Ignore_Rep_Clauses is active,
|
||
remove address clause from tree so that it does not reach the backend.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Valid]): Do not
|
||
expand 'Valid from user code in CodePeer mode, will be handled by the
|
||
back-end directly.
|
||
|
||
2010-06-23 Bob Duff <duff@adacore.com>
|
||
|
||
* g-comlin.ads: Minor comment improvements.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Uses_SS): The expression that initializes a controlled
|
||
component of a record type may be a user-defined operator that is
|
||
rewritten as a function call.
|
||
|
||
2010-06-23 Bob Duff <duff@adacore.com>
|
||
|
||
* g-comlin.ads, sem_ch13.adb: Minor comment fix.
|
||
|
||
2010-06-23 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_ch11.adb (Expand_Local_Exception_Handlers): Propagate the end
|
||
label to the new sequence of statements. Set the sloc of the raise
|
||
statement onto the new goto statements.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-stuten.ads, a-stuten.adb: New files.
|
||
* impunit.adb: Add engtry for Ada.Strings.UTF_Encoding (a-stuten.ads)
|
||
* Makefile.rtl: Add entry for a-stuten (Ada.Strings.UTF_Encoding)
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add documentation of -gnat12 switch
|
||
Add documentation of -gnatX switch.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* inline.ads: Include the current Ada_Version in the info for pending
|
||
instance bodies, so that declaration and body are compiled with the
|
||
same Ada_Version.
|
||
* inline.adb: Move with_clause for Opt to spec.
|
||
* sem_ch12.adb (Analyze_Package_Instantiation,
|
||
Analyze_Subprogram_Instantiation): Save current Ada_Version in
|
||
Pending_Instantiation information.
|
||
(Instantiate_Package_Body, Instantiate_Subprogram_Body,
|
||
Inline_Package_Body): Use the Ada_Version present in the body
|
||
information.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* usage.adb: Add documentation for -gnat12 switch.
|
||
* errout.ads: Add VMS alias entry for -gnat12 switch
|
||
* gnat_rm.texi: Add documentation for pragma Ada_12 and Ada_2012
|
||
Add documentation for pragma Extensions_Allowed.
|
||
* opt.ads: Add entry for Ada 2012 mode.
|
||
* sem_ch4.adb, par-ch3.adb, par-ch4.adb: Use new Ada 2012 mode for 2012
|
||
features.
|
||
* sem_prag.adb, par-prag.adb: Add processing for pragma Ada_12 and
|
||
Ada_2012.
|
||
* sem_ch13.adb: Add handling for Ada 2012 mode.
|
||
* snames.ads-tmpl: Add entries for pragma Ada_2012 and Ada_12.
|
||
* switch-c.adb: Add handling for -gnat12 switch.
|
||
Implement -gnat2005 and -gnat2012.
|
||
* usage.adb: Add documentation for -gnat12 switch.
|
||
* vms_data.ads: Add /12 switch for Ada 2012 mode.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Allocator): Fix potential crash when using
|
||
No_Task_Hierarchy restriction. Add comment.
|
||
* exp_ch9.adb, exp_ch3.adb: Update comments.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch5.adb (Process_Bounds): Remove some junk initializations.
|
||
* sem_res.adb: Add comments.
|
||
* sem_util.adb: Minor reformatting. Add comments.
|
||
Change increment on Actuals_In_Call table.
|
||
* opt.ads: Minor: add 'constant'.
|
||
|
||
2010-06-23 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Make_DT): Initialize the Size_Func component of the
|
||
TSD to Null_Address if No_Dispatching_Calls is active.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* a-comlin.ads: Indicate that use of this package is not supported
|
||
during the elaboration of an auto-initialized Stand-Alone Library.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_util.adb (Is_Possibly_Misaligned_Object): Do not rely on an
|
||
alignment clause on a record type to determine if a component may be
|
||
misaligned. The decision must be taken in the back-end where target
|
||
alignment information is known.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat1drv.adb (Adjust_Global_Switches): Enable some restrictions
|
||
systematically in CodePeer mode to simplify generated code.
|
||
* restrict.adb (Check_Restriction): Do nothing in CodePeer mode.
|
||
* exp_ch4.adb (Expand_N_Allocator): Generate proper code when
|
||
No_Task_Hierarchy is set instead of crasshing.
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_util.adb: Minor code cleanup: test for proper entity instead of
|
||
testing just Chars attribute when checking whether a given scope is
|
||
System.
|
||
* exp_ch4.adb, einfo.adb: Minor reformatting.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
PR ada/44633
|
||
* switch-m.adb (Normalize_Compiler_Switches): Take into account
|
||
switches -gnatB, -gnatD=nn, -gnatG (incuding -gnatG=nn), -gnatI,
|
||
-gnatl=file, -gnatS, -gnatjnn, -gnateI=nn and -gnatWx.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Membership_Op): If left operand is a mixed mode
|
||
operation with a universal real operand, and the right operand is a
|
||
range with universal bounds, find unique fixed point that may be
|
||
candidate, and warn appropriately.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Intrinsic_Operator): Add guards to handle
|
||
properly the rare cases where VMS operators are visible through
|
||
Extend_System, but the default System is being used and Address is a
|
||
private type.
|
||
* sem_util.adb: Widen predicate Is_VMS_Operator.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* switch-m.adb (Normalize_Compiler_Switches): Take into account -gnatC
|
||
and -gnateS.
|
||
|
||
2010-06-23 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* einfo.adb (Has_Foreign_Convention): Consider Intrinsic with
|
||
Interface_Name as foreign. These are GCC builtin imports for
|
||
which Ada specific processing doesn't apply.
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch12.adb: Minor reformatting.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Is_VMS_Operator): Use scope of system extension to
|
||
determine whether an intrinsic subprogram is VMS specific.
|
||
|
||
2010-06-23 Hristian Kirtchev <kirtchev@adacore.com>
|
||
|
||
* treepr.adb (Print_Entity_Info): Output the contents of Field28 if it
|
||
is present in the entity.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* xr_tabls.adb, xref_lib.adb: Update to latest lib-xref.ads
|
||
Fix handling of parameters.
|
||
Add protection against unexpected cases.
|
||
* sem_ch6.adb (Create_Extra_Formals): Use suffix "L" instead of "A" for
|
||
access level, since "A" suffix is already used elsewhere. Similarly,
|
||
use suffix "O" instead of "C" for 'Constrained since "C" suffix is used
|
||
for xxx'Class.
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_util.adb, sem_util.ads: Minor reformatting.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.ads (Gprclean_Flags.Missing_Source_Files): Set to Error to keep
|
||
the previous behavior of gprclean when there are missing files.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Load_Body_Of_Generic): In CodePeer mode, a missing
|
||
generic body is not a fatal error.
|
||
(Mark_Context): Handle properly names of child units.
|
||
* sem.adb (Walk_Library_Items.Do_Action): Remove assertion on
|
||
instantiations.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* ali.adb (Scan_ALI): When ignoring R lines, do not skip the next
|
||
non-empty line.
|
||
|
||
2010-06-23 Bob Duff <duff@adacore.com>
|
||
|
||
* g-pehage.ads, g-pehage.adb: Switch default optimization mode to
|
||
Memory_Space, because CPU_Time doesn't seem to provide any significant
|
||
speed advantage in practice. Cleanup: Get rid of constant
|
||
Default_Optimization; doesn't seem to add anything. Use case
|
||
statements instead of if statements; seems cleaner.
|
||
|
||
2010-06-23 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Procedure>: Use
|
||
Wshadow instead of Wextra to guard warning on absence of internal
|
||
builtin decl for an import. Fix use of quote in warning text.
|
||
(intrin_arglists_compatible_p): Remove processing of integer trailing
|
||
args on the Ada side. Fix use of literal > in warning text.
|
||
(intrin_return_compatible_p): Never warn on "function imported as
|
||
procedure". Defer the void/void case to the common type compatibility
|
||
check.
|
||
(gnat_to_gnu_param): Use void_ptr GCC type for System.Address argument
|
||
of GCC builtin imports.
|
||
|
||
2010-06-23 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* gcc-interface/decl.c (intrin_types_incompatible_p): New function,
|
||
helper for ...
|
||
(intrin_arglists_compatible_p, intrin_return_compatible_p): New
|
||
functions, helpers for ...
|
||
(intrin_profiles_compatible_p): New function, replacement for ...
|
||
(compatible_signatures_p): Removed.
|
||
(gnat_to_gnu_entity) <case E_Procedure>: If -Wextra, warn on
|
||
attempt to bind an unregistered builtin function. When we have
|
||
one, use it and warn on profile incompatibilities.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Mark_Coextensions): If the expression in the allocator
|
||
for a coextension in an object declaration is a concatenation, treat
|
||
coextension as dynamic.
|
||
|
||
2010-06-23 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): Ensure that the
|
||
internal entities are added to the scope of the tagged type.
|
||
(Derive_Subprograms): Do not stop derivation when we find the first
|
||
internal entity that has attribute Interface_Alias. After the change
|
||
done to Override_Dispatching_Operations it is no longer true that
|
||
these primirives are always located at the end of the list of
|
||
primitives.
|
||
* einfo.ads (Primitive_Operations): Add documentation.
|
||
* exp_disp.adb (Write_DT): Improve output adding to the name of the
|
||
primitive a prefix indicating its corresponding tagged type.
|
||
* sem_disp.adb (Override_Dispatching_Operations): If the overridden
|
||
entity covers the primitive of an interface that is not an ancestor of
|
||
this tagged type then the new primitive is added at the end of the list
|
||
of primitives. Required to fulfill the C++ ABI.
|
||
|
||
2010-06-23 Javier Miranda <miranda@adacore.com>
|
||
|
||
* atree.ads (Set_Reporting_Proc): New subprogram.
|
||
* atree.adb: Remove dependency on packages Opt and SCIL_LL.
|
||
(Allocate_Initialize_Node, Replace, Rewrite): Replace direct calls
|
||
to routines of package Scil_ll by indirect call to the registered
|
||
subprogram.
|
||
(Set_Reporting_Proc): New subprogram. Used to register a subprogram
|
||
that is invoked when a node is allocated, replaced or rewritten.
|
||
* scil_ll.adb (Copy_SCIL_Node): New routine that takes care of copying
|
||
the SCIL node. Used as argument for Set_Reporting_Proc.
|
||
(Initialize): Register Copy_SCIL_Node as the reporting routine that
|
||
is invoked by atree.
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch3.ads: Minor reformatting.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Analyze_Package_Instantiation): In CodePeer mode,
|
||
always analyze the generic body and instance, because it may be needed
|
||
downstream.
|
||
(Mark_Context): Prepend the with clauses for needed generic units, so
|
||
they appear in a better order for CodePeer.
|
||
* sem_util.adb, sem_util.ads: Prototype code for AI05-0144.
|
||
|
||
2010-06-23 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj.ads, prj-nmsc.adb (Error_Or_Warning): New subprogram.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-pehage.adb, exp_ch13.adb: Minor reformatting.
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* a-tags.ads: Fix description of TSD structure.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Mark_Context): When indicating that the body of a
|
||
generic unit is needed prior to the unit containing an instantiation,
|
||
search recursively the context of the generic to add other generic
|
||
bodies that may be instantiated indirectly through the current instance.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* freeze.adb: Minor reformatting.
|
||
|
||
2010-06-23 Bob Duff <duff@adacore.com>
|
||
|
||
* g-pehage.adb (Trim_Trailing_Nuls): Fix the code to match the comment.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Compile_Sources): Complete previous change.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Add_Extra_Formal): Use suffix "C" in the name of the
|
||
Constrained extra formal.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch13.adb (Expand_Freeze_Actions): If validity checks and
|
||
Initialize_Scalars are enabled, compile the generated equality function
|
||
for a composite type with full checks enabled, so that validity checks
|
||
are performed on individual components.
|
||
|
||
2010-06-23 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj.adb, prj.ads, prj-nmsc.adb (Processing_Flags): New flag
|
||
Missing_Source_Files.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb, exp_util.adb: Minor reformatting.
|
||
|
||
2010-06-23 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* a-reatim.adb, a-retide.adb: Move the initialization of the tasking
|
||
run time from Ada.Real_Time.Delays to Ada.Real_Time. This way, calls to
|
||
Clock (without delays) use a run time which is properly initialized.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb: Do not set Check_Readonly_Files when setting Must_Compile,
|
||
when -f -u and a main is specified on the command line. However,
|
||
attempt to compile even when the ALI file is read-only when
|
||
Must_Compile is True.
|
||
|
||
2010-06-23 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* checks.adb, g-pehage.adb, cstand.adb: Minor code factorization.
|
||
|
||
2010-06-23 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): Generate internal
|
||
entities for parent types that are interfaces. Needed in generics to
|
||
handle formals that implement interfaces.
|
||
(Derive_Subprograms): Add assertion for derivation of tagged types that
|
||
do not cover interfaces. For generics, complete code that handles
|
||
derivation of type that covers interfaces because the previous
|
||
condition was weak (it required only name consistency; arguments were
|
||
not checked). Add new code to locate primitives covering interfaces
|
||
defined in generic units or instantiatons.
|
||
* sem_util.adb (Has_Interfaces): Add missing support for derived types.
|
||
* sem_ch6.adb (Check_Overriding_Indicator): Minor code cleanups.
|
||
* exp_disp.adb (Make_Select_Specific_Data_Table): Skip primitives of
|
||
interfaces that are parents of the type because they share the primary
|
||
dispatch table.
|
||
(Register_Primitive): Do not register primitives of interfaces that
|
||
are parents of the type.
|
||
* sem_ch13.adb (Analyze_Freeze_Entity): Add documentation.
|
||
* exp_cg.adb (Write_Type_Info): When displaying overriding of interface
|
||
primitives skip primitives of interfaces that are parents of the type.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_attr.adb (Eval_Attribute): If the prefix is an array, the
|
||
attribute cannot be constant-folded if an index type is a formal type,
|
||
or is derived from one.
|
||
* checks.adb (Determine_Range): ditto.
|
||
|
||
2010-06-23 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat_ugn.texi, gnatxref.adb: Add support for --ext switch.
|
||
|
||
2010-06-23 Bob Duff <duff@adacore.com>
|
||
|
||
* g-pehage.ads, g-pehage.adb (Put): Fix off-by-one bug.
|
||
(Insert): Disallow nul characters.
|
||
(misc output routines): Assert no nul characters.
|
||
|
||
2010-06-23 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb: Use predefined unsigned type in all cases.
|
||
|
||
2010-06-23 Bob Duff <duff@adacore.com>
|
||
|
||
* s-rannum.adb (Reset): Avoid overflow in calculation of Initiator.
|
||
* g-pehage.ads: Minor comment fixes.
|
||
* g-pehage.adb: Minor: Add some additional debugging printouts under
|
||
Verbose flag.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* binde.adb (Better_Choice): Always prefer Pure/Preelab.
|
||
(Worse_Choice): Always prefer Pure/Preelab.
|
||
|
||
2010-06-23 Vincent Celier <celier@adacore.com>
|
||
|
||
* a-reatim.adb: Call System.OS_Primitives.Initialize during elaboration
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Properly handle
|
||
checking returns in generic case.
|
||
(Check_Missing_Return): New procedure.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* bindgen.adb, switch-b.adb: Minor reformatting.
|
||
|
||
2010-06-23 Javier Miranda <miranda@adacore.com>
|
||
|
||
* frontend.adb (Frontend): Add call to initialize the new package
|
||
SCIL_LL.
|
||
* exp_ch7.adb (Wrap_Transient_Expression): Remove call to
|
||
Adjust_SCIL_Node.
|
||
(Wrap_Transient_Statement): Remove call to Adjust_SCIL_Node.
|
||
* sem_ch5.adb (Analyze_Iteration_Scheme.Process_Bounds): Remove call to
|
||
Adjust_SCIL_Node.
|
||
* exp_util.adb (Insert_Actions): Remove code for
|
||
N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes.
|
||
(Remove_Side_Effects): Remove calls to Adjust_SCIL_Node.
|
||
* sinfo.adb (SCIL_Entity, SCIL_Tag_Value): Remove checks on
|
||
N_SCIL_Tag_Init and N_SCIL_Dispatch_Table_Object_Init in the assertion.
|
||
(SCIL_Related_Node, Set_SCIL_Related_Node): Removed.
|
||
* sinfo.ads (SCIL_Related_Node): Field removed.
|
||
(N_SCIL_Dispatch_Table_Object_Init): Node removed.
|
||
(N_SCIL_Tag_Init): Node removed.
|
||
* sem_scil.ads, sem_scil.adb (Adjust_SCIL_Node): Removed.
|
||
(Check_SCIL_Node): New implementation.
|
||
(Find_SCIL_Node): Removed.
|
||
* sem.adb (Analyze): Remove management of
|
||
N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes.
|
||
* sem_util.adb (Insert_Explicit_Dereference): Remove call to
|
||
Adjust_SCIL_Node.
|
||
* exp_ch4.adb (Expand_N_In): Code cleanup: remove call to
|
||
Set_SCIL_Related_Node and avoid adding the SCIL node before the
|
||
referenced node using Insert_Action because this is not longer
|
||
required.
|
||
(Expand_Short_Circuit_Operator): Remove call to SCIL node.
|
||
* exp_ch6.adb (Expand_Call): Remove call to Adjust_SCIL_Node.
|
||
* sem_ch4.adb (Analyze_Type_Conversion): Remove call to
|
||
Adjust_SCIL_Node.
|
||
* exp_disp.adb (Expand_Dispatching_Call): Minor code reorganization
|
||
because we no longer require to generate the SCIL node before the call.
|
||
(Make_DT): Remove generation of SCI_Dispatch_Table_Object_Init node.
|
||
Remove calls to Set_SCIL_Related_Node and avoid adding the SCIL
|
||
nodes before the referenced node using Insert_Action because this
|
||
is not longer required.
|
||
* atree.adb (Allocate_Initialize_Node, Replace, Rewrite): Add call to
|
||
update the SCIL_Node field.
|
||
* sprint.adb (Sprint_Node_Actual): Remove code for
|
||
N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes.
|
||
* treepr.adb (Print_Node): Print the SCIL node field (if available).
|
||
* exp_ch3.adb (Build_Init_Procedure): Remove generation of
|
||
SCIL_Tag_Init nodes.
|
||
* scil_ll.ads, scil_ll.adb: New files.
|
||
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update
|
||
dependencies.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb: Minor reformatting.
|
||
|
||
2010-06-23 Doug Rupp <rupp@adacore.com>
|
||
|
||
* bindusg.adb (Display): Write -Hnn line.
|
||
* bindgen.adb (Gen_Adainit_Ada): Write Heap_Size to binder file as
|
||
necessary.
|
||
* init.c (__gl_heap_size): Rename from __gl_no_malloc_64 and change
|
||
valid values to 32 and 64.
|
||
(GNAT$NO_MALLOC_64): Recognize TRUE, 1, FALSE, and 0 in addition to
|
||
ENABLE, DISABLE as valid settings.
|
||
* switch-b.adb (Scan_Binder_Switches): Process -Hnn switch.
|
||
* opt.ads (Heap_Size): New global variable.
|
||
* gcc-interface/utils2.c (maybe_wrap_malloc): Remove mostly redundant
|
||
TARGET_MALLOC64 check. Fix comment.
|
||
|
||
2010-06-23 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb, exp_ch4.adb, s-rannum.ads, sem.adb, sem_ch12.adb: Minor
|
||
reformatting. Add comments.
|
||
* errout.adb (Finalize): Properly adjust warning count when deleting
|
||
continuations.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.adb (Finalize): Set Prev pointers.
|
||
(Finalize): Delete continuations for deletion by warnings off(str).
|
||
* erroutc.ads: Add Prev pointer to error message structure.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb (Do_Unit_And_Dependents): If the spec of the main unit is a
|
||
child unit, examine context of parent units to locate instantiated
|
||
generics whose bodies may be needed.
|
||
* sem_ch12.adb: (Mark_Context): if the enclosing unit does not have a
|
||
with_clause for the instantiated generic, examine the context of its
|
||
parents, to set Withed_Body flag, so that it can be visited earlier.
|
||
* exp_ch4.adb (Expand_N_Op_Not): If this is a VMS operator applied to
|
||
an unsigned type, use a type of the proper size for the intermediate
|
||
value, to prevent alignment problems on unchecked conversion.
|
||
|
||
2010-06-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* s-rannum.ads Change Generator type to be self-referential to allow
|
||
Random to update its argument. Use "in" mode for the generator in the
|
||
Reset procedures to allow them to be called from the Ada.Numerics
|
||
packages without tricks.
|
||
* s-rannum.adb: Use the self-referencing argument to get write access
|
||
to the internal state of the random generator.
|
||
* a-nudira.ads: Make Generator a derived type of
|
||
System.Random_Numbers.Generator.
|
||
* a-nudira.adb: Remove use of 'Unrestricted_Access.
|
||
Put subprograms in alpha order and add headers.
|
||
* g-mbdira.ads: Change Generator type to be self-referential.
|
||
* g-mbdira.adb: Remove use of 'Unrestricted_Access.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* freeze.adb: Minor reformatting
|
||
Minor code reorganization (use Nkind_In and Ekind_In).
|
||
|
||
2010-06-22 Bob Duff <duff@adacore.com>
|
||
|
||
* gnat1drv.adb (Gnat1drv): Remove the messages that recommend using
|
||
-gnatc when a file is compiled that we cannot generate code for, not
|
||
helpful and confusing.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* switch-m.adb (Normalize_Compiler_Switches): Process correctly
|
||
switches -gnatknn.
|
||
|
||
2010-06-22 Paul Hilfinger <hilfinger@adacore.com>
|
||
|
||
* s-rannum.adb: Replace constants with commented symbols.
|
||
* s-rannum.ads: Explain significance of the initial value of the data
|
||
structure.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* a-ngcoty.adb: Clarify comment.
|
||
|
||
2010-06-22 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* exp_pakd.adb (Expand_Bit_Packed_Element_Set): Return without
|
||
expansion for indexing packed arrays with small power-of-2 component
|
||
sizes when the target is AAMP.
|
||
(Expand_Packed_Element_Reference): Return without expansion for
|
||
indexing packed arrays with small power-of-2 component sizes when the
|
||
target is AAMP.
|
||
|
||
2010-06-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_In): Do not substitute a valid check for X in
|
||
Float'Range.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-mbdira.adb, g-mbflra.adb, a-nuflra.adb, a-nudira.adb: Minor comment
|
||
updates.
|
||
|
||
2010-06-22 Doug Rupp <rupp@adacore.com>
|
||
|
||
* system-vms.ads, system-vms-zcx.ads: Remove old unused VMS system
|
||
packages.
|
||
* system-vms_64.ads, system-vms-ia64.ads: Minor reformatting.
|
||
(pragma Ident): Add a default ident string in the private part.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* cstand.adb: Minor reformatting.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* freeze.adb (Build_And_Analyze_Renamed_Body): For expansion purposes,
|
||
recognize the Shift and Rotation intrinsics that are known to the
|
||
compiler but have no interface name.
|
||
|
||
2010-06-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* a-ngcoty.adb ("*"): Rewrite complex multiplication to use proper
|
||
scaling in case of overflow or NaN results.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* cstand.adb: Complete previous change.
|
||
* g-dirope.ads: Add comment.
|
||
* s-stchop.adb, sfn_scan.adb: Minor reformatting.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* cstand.adb: Add tree nodes for pragma Pack on string types.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Last_Formal): New synthesized attribute.
|
||
* exp_util.adb (Find_Prim_Op): Use new attribute to locate the last
|
||
formal of a primitive.
|
||
* exp_disp.adb (Is_Predefined_Dispatching_Operation,
|
||
Is_Predefined_Dispatching_Alias): Use new attribute to locate the last
|
||
formal of a primitive.
|
||
* exp_cg.adb (Is_Predefined_Dispatching_Operation): Use new attribute
|
||
to obtain the last formal of a primitive.
|
||
|
||
2010-06-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* sysdep.c, init.c, adaint.c, cstreams.c: Remove conditional code
|
||
depending on __EMX__ or MSDOS being defined.
|
||
* i-cstrea.ads, gnat_rm.texi: Remove mentions of OS/2, DOS and Xenix.
|
||
* a-excpol-abort.adb: Update comment indicating users of the file.
|
||
* xref_lib.adb, sfn_scan.adb: Remove mention of OS/2, replace NT by
|
||
Windows.
|
||
* env.c: Remove empty conditional for MSDOS.
|
||
* s-stchop.adb, g-dirope.ads, s-fileio.adb, osint.ads: Remove mention
|
||
of OS/2 in comment.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-rannum.adb: Minor reformatting.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_aux.adb, sem_aux.ads, sem_util.adb, sem_util.ads, sem_elim.adb,
|
||
exp_cg.adb: Minor code reorganization: Move routine Ultimate_Alias from
|
||
package Sem_Util to package Sem_Aux.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Make_Secondary_DT, Make_DT): Minor code cleanup:
|
||
remove useless restriction on imported routines when building the
|
||
dispatch tables.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* cstand.adb (Create_Standard): Set Has_Pragma_Pack for standard string
|
||
types.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch4.adb (Collect_Generic_Type_Ops): Protect code that handles
|
||
generic subprogram declarations to ensure proper context. Add missing
|
||
support for generic actuals.
|
||
(Try_Primitive_Operation): Add missing support for concurrent types
|
||
that have no Corresponding_Record_Type. Required to diagnose errors
|
||
compiling
|
||
generics or when compiling with no code generation (-gnatc).
|
||
* sem_ch9.adb (Analyze_Protected_Type, Analyze_Task_Type): Do not build
|
||
the corresponding record type.
|
||
* sem_disp.ads, sem_disp.adb (Check_Dispatching_Operation): Complete
|
||
documentation. Do minimum decoration when processing a primitive of a
|
||
concurrent tagged type that covers interfaces. Required to diagnose
|
||
errors in the Object.Operation notation compiling generics or under
|
||
-gnatc.
|
||
* exp_ch9.ads, exp_ch9.adb (Build_Corresponding_Record): Add missing
|
||
propagation of attribute Interface_List to the corresponding record.
|
||
(Expand_N_Task_Type_Declaration): Code cleanup.
|
||
(Expand_N_Protected_Type_Declaration): Code cleanup.
|
||
|
||
2010-06-22 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* a-convec.adb, a-coinve.adb: Removed 64-bit types Int and UInt.
|
||
|
||
2010-06-22 Paul Hilfinger <hilfinger@adacore.com>
|
||
|
||
* s-rannum.adb (Random_Float_Template): Replace with unbiased version
|
||
that is able to produce all representable floating-point numbers in the
|
||
unit interval. Remove template parameter Shift_Right, no longer used.
|
||
* gnat_rm.texi: Document the period of the pseudo-random number
|
||
generator under the description of its algorithm.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_aggr.adb (Rewrite_Discriminant): Fix predicate used to identify
|
||
reference to discriminant (can be an expanded name as well as an
|
||
identifier).
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb: Clarify comment.
|
||
|
||
2010-06-22 Geert Bosch <bosch@adacore.com>
|
||
|
||
* exp_imgv.adb (Expand_Image_Attribute): Treat ordinary fixed point
|
||
with decimal small as decimal types, avoiding FP arithmetic.
|
||
(Has_Decimal_Small): New function.
|
||
* einfo.ads, einfo.adb (Aft_Value): New synthesized attributed for
|
||
fixed point types.
|
||
* sem_attr.adb (Eval_Attribute): Remove Aft_Value function and update
|
||
callers to call the new function in Einfo that takes the entity as
|
||
parameter.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb, sem_ch8.adb: Minor reformatting.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_elab.adb: Minor reformatting.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatsym.adb: Put the object files in the table in increasing
|
||
aphabetical order of base names.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Set_Entity_Or_Discriminal): New procedure used by
|
||
Find_Direct_Name and Find_Expanded_Name, to replace a discriminant with
|
||
the corresponding discriminal within a record declaration.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_aggr.adb (Rewrite_Discriminant): Rewriting must occur only for an
|
||
expression referring to a discriminal of the type of the aggregate (not
|
||
a discriminal of some other unrelated type), and the prefix in the
|
||
generated selected component must come from Lhs, not Obj.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Derived_Record_Type): Fix predicate determining
|
||
when to freeze the parent type.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-rannum.adb, a-nudira.adb, types.ads, freeze.adb, sem_aggr.adb,
|
||
exp_aggr.adb: Minor reformatting.
|
||
* gnat_rm.texi: Document GNAT.MBBS_Discrete_Random and
|
||
GNAT.MBSS_Float_Random.
|
||
* g-mbdira.adb, g-mbflra.adb, g-mbdira.ads, g-mbflra.ads: Fix header.
|
||
|
||
2010-06-22 Paul Hilfinger <hilfinger@adacore.com>
|
||
|
||
* a-nudira.adb, a-nudira.ads, a-nuflra.adb, a-nuflra.ads,
|
||
gnat_rm.texi, impunit.adb, Makefile.rtl, s-rannum.adb
|
||
(Random_Float_Template, Random): New method of creating
|
||
uniform floating-point variables that allow the creation of all machine
|
||
values in [0 .. 1).
|
||
|
||
* g-mbdira.adb, g-mbflra.adb, g-mbdira.ads, g-mbflra.ads: New file.
|
||
|
||
2010-06-22 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch5.adb (Analyze_Assignment): Revise test for illegal assignment
|
||
to abstract targets to check that the type is tagged and comes from
|
||
source, rather than only testing for targets of interface types. Remove
|
||
premature return.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* vms_data.ads: Modify the declarations of qualifiers
|
||
/UNCHECKED_SHARED_LIB_IMPORTS to allow the generation of gnat.hlp
|
||
without error.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb (Is_Build_In_Place_Function): Predicate is false if
|
||
expansion is disabled.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* makeusg.adb: Minor reformatting.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* types.ads: (Dint): Removed, no longer used anywhere.
|
||
* uintp.adb (UI_From_CC): Use UI_From_Int, range is sufficient.
|
||
(UI_Mul): Avoid use of UI_From_Dint.
|
||
(UI_From_Dint): Removed, not used.
|
||
* uintp.ads (UI_From_Dint): Removed, not used.
|
||
(Uint_Min/Max_Simple_Mul): New constants.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* clean.adb (Parse_Cmd_Line): Recognize switch
|
||
--unchecked-shared-lib-imports.
|
||
(Usage): Add line for switch --unchecked-shared-lib-imports
|
||
* makeusg.adb: Add line for switch --unchecked-shared-lib-imports
|
||
* makeutl.ads: (Unchecked_Shared_Lib_Imports): New constant string
|
||
moved from GPR_Util.
|
||
* switch-m.adb (Scan_Make_Switches): Recognize switch
|
||
--unchecked-shared-lib-imports.
|
||
* vms_data.ads: Add VMS qualifiers /UNCHECKED_SHARED_LIB_IMPORTS.
|
||
* gnat_ugn.texi: Add documentation for new switch
|
||
--unchecked-shared-lib-imports. Add also documentation for --subdirs.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_prag.adb, sem_util.adb, sem_util.ads, sem_attr.adb, exp_ch6.adb,
|
||
exp_disp.adb, sem_eval.adb, exp_dist.adb lib-xref.adb: Code cleanup,
|
||
this patch replaces duplication of code that traverses the chain of
|
||
aliased primitives by a call to routine Ultimate_Alias that
|
||
provides this functionality.
|
||
|
||
2010-06-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* fmap.adb, opt.ads, osint.adb, osint.ads, output.ads, scng.adb,
|
||
sinput-c.adb, switch-m.ads, tree_io.ads: Use simpler form of
|
||
Warnings Off/On.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* einfo.ads: Minor reformatting.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Expand_Interface_Thunk): Do not generate thunk of
|
||
eliminated primitives.
|
||
(Make_DT): Avoid referencing eliminated primitives.
|
||
(Register_Primitive): Do not register eliminated primitives in the
|
||
dispatch table. Required to add this functionality when the program is
|
||
compiled without static dispatch tables (-gnatd.t)
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* fmap.adb, scng.adb, switch-m.ads, sinput-c.adb, opt.ads, output.ads,
|
||
tree_io.ads, osint.adb, osint.ads: Use configuration pragmas to prevent
|
||
warnings on use of internal GNAT units.
|
||
|
||
2010-06-22 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* s-taprop-vxworks.adb (Set_Priority): Update comments.
|
||
|
||
2010-06-22 Paul Hilfinger <hilfinger@adacore.com>
|
||
|
||
* s-rannum.adb: Make stylistic change to remove mystery constant in
|
||
Extract_Value. Image_Numeral_Length: new symbolic constant.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb: Make Is_Protected_Interface,
|
||
Is_Synchronized_Interface, Is_Task_Interface into computable
|
||
predicates, to free three flags in entity nodes.
|
||
* sem_ch3.adb: Remove setting of these flags.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* uintp.adb, osint.adb, prj-conf.adb, prj-part.adb, prj.adb: Minor
|
||
reformatting.
|
||
* s-taprop-vxworks.adb: Add comment for Set_Priority.
|
||
* impunit.adb (Map_Array): Add entries for s-htable.ads and s-crc32.ads
|
||
* projects.texi: Move @cindex to the left margin, since otherwise we
|
||
are missing entries in the index.
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-part.adb, prj.adb, tempdir.ads, makeutl.adb: Use
|
||
packages from the GNAT hierarchy instead of System when possible.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-22 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* s-taprop-vxworks.adb (Set_Priority): Remove the code that was
|
||
previously in place to reorder the ready queue when a task drops its
|
||
priority due to the loss of inherited priority.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* projects.texi: Minor spelling error fixes.
|
||
Minor reformatting.
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-part.adb, prj-ext.adb, prj.adb, makeutl.adb, prj-conf.adb: Remove
|
||
warnings for some with clauses.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.adb (Unwind_Internal_Type): Improve handling of First_Subtype
|
||
test to catch more cases where first subtype is the results we want.
|
||
* sem_res.adb (Make_Call_Into_Operator): Don't go to First_Subtype in
|
||
error case, since Errout will now handle this correctly.
|
||
* gcc-interface/Make-lang.in: Add Sem_Aux to list of GNATBIND objects.
|
||
Update dependencies.
|
||
|
||
2010-06-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_Allocator_Expression): Set Related_Node properly
|
||
when calling Make_Temporary.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Access_Subprogram_Declaration): An anonymous access to
|
||
subprogram can be associated with an entry body.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* scos.ads: Add note on membership test handling.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* projects.texi: Minor spelling fixes.
|
||
Minor reformatting.
|
||
|
||
2010-06-22 Paul Hilfinger <hilfinger@adacore.com>
|
||
|
||
* s-rannum.adb: Correct off-by-one error in Extract_Value.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* mlib-prj.adb (Display): In non verbose mode, truncate after fourth
|
||
argument.
|
||
* mlib-utl.adb (Gcc): In non verbose mode, truncate the display of the
|
||
gcc command if it is too long.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* errout.adb (Set_Msg_Node): Fix incorrect reference to node.
|
||
|
||
2010-06-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_Actuals): Use Actual as the related node when
|
||
calling Make_Temporary.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb, sem_aux.adb, errout.adb: Minor reformatting.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb: Additional special-case for VMS.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatsym.adb: Minor comment fix.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Process_Naming_Scheme): Initialize Lib_Data_Table.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch4.adb (P_Name): Recognize 'Mod attribute in Ada 95 mode
|
||
* sem_attr.adb (Attribute_05): Add Name_Mod so that 'Mod recognized in
|
||
Ada 95 mode as an implementation defined attribute.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* bindusg.adb (Display): Update line for -R
|
||
* switch-b.adb (Scan_Binder_Switches): Allow generation of the binder
|
||
generated files when -R is used.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Lib_Data_Table): New table.
|
||
(Check_Library_Attributes): Check if the same library name is used in
|
||
two different projects that do not extend each other.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* lib-writ.ads, errout.adb, einfo.adb, einfo.ads: Minor reformatting.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* adaint.c (__gnat_locate_regular_file): If a directory in the path is
|
||
empty, make it the current working directory.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Derived_Record_Type): When deriving a tagged
|
||
private type with discriminants, make sure the parent type is frozen.
|
||
|
||
2010-06-22 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_attr.adb (Expand_N_Attribute_Reference) <Attribute_Bit>: Deal
|
||
with packed array references specially.
|
||
* exp_ch4.adb (Expand_N_Indexed_Component): Do not convert a reference
|
||
to a component of a bit packed array if it is the prefix of 'Bit.
|
||
* exp_pakd.ads (Expand_Packed_Bit_Reference): Declare.
|
||
* exp_pakd.adb (Expand_Packed_Bit_Reference): New procedure. Expand a
|
||
'Bit reference, where the prefix involves a packed array reference.
|
||
(Get_Base_And_Bit_Offset): New helper, extracted from...
|
||
(Expand_Packed_Address_Reference): ...here. Call above procedure to
|
||
get the outer object and offset expression.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_attr.adb, lib-writ.ads, bindgen.adb: Minor reformatting.
|
||
* einfo.adb (Related_Expression, Set_Related_Expression): Add
|
||
assertions.
|
||
|
||
2010-06-22 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): Minor code
|
||
reorganization to properly check if the operation has been inherited as
|
||
an abstract operation.
|
||
|
||
2010-06-22 Ed Falis <falis@adacore.com>
|
||
|
||
* s-osinte-vxworks.ads: Complete previous change.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb: Add comment.
|
||
* projects.texi, gnat_ugn.texi: Remove macro.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-attr.adb: Remove project level attribute Main_Language.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* switch-b.adb, osint-b.adb: Minor reformatting.
|
||
|
||
2010-06-22 Pascal Obry <obry@adacore.com>
|
||
|
||
* g-socthi-mingw.adb (C_Sendmsg): Do not attempt to send data from a
|
||
vector if previous send was not fully successful. If only part of
|
||
the vector data was sent, we exit the loop.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb (Make_Call_Into_Operator): Use First_Subtype for better
|
||
error reporting with generic types.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* bindgen.adb, bindusg.adb, gnatbind.adb, gnat_ugn.texi, opt.ads,
|
||
osint-b.adb, osint-b.ads, output.adb, output.ads, switch-b.adb,
|
||
vms_data.ads: Add a new command line switch -A to gnatbind to output
|
||
the list of all ALI files for the partition.
|
||
|
||
2010-06-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-osinte-vxworks.ads: Fix casing.
|
||
* s-vxwext-kernel.ads, s-vxwext-rtp.ads: Complete previous
|
||
change: Interfaces.C does not provide a long_long type.
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* gnat_ugn.texi, projects.texi: Preprocess projects.texi for VMS and
|
||
native user's guide, since this document contains the two versions.
|
||
* gcc-interface/Make-lang.in: Update doc dependencies.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb: Minor reformatting. Minor code reorganization.
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* gnat_ugn.texi, projects.texi: Remove toplevel menu, since we should
|
||
not build this file on its own (only through gnat_ugn.texi).
|
||
Remove macro definitions and insert simpler version in gnat_ugn.texi.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* ali-util.ads: Minor comment update.
|
||
* g-socthi-mingw.adb: Minor reformatting.
|
||
|
||
2010-06-22 Ed Falis <falis@adacore.com>
|
||
|
||
* s-osinte-vxworks.ads: Take sigset_t definition of System.VxWorks.Ext.
|
||
* s-vxwext.ads, s-vxwext-kernel.ads, s-vxwext-rtp.ads: Define sigset_t
|
||
for specific versions of VxWorks.
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* gnat_rm.texi, gnat_ugn.texi, projects.texi: Remove all project files
|
||
related sections from user's guide and reference manual, since they
|
||
have now been merged together into a separate document (projects.texi).
|
||
This removes a lot of duplication where attributes where described
|
||
in several places.
|
||
The grammar for the project files is now in each of the sections
|
||
(packages,expressions,...) instead of being duplicates in two other
|
||
sections (one in the user's guide that contained the full grammar,
|
||
and various sections in the rm that contained extracts of the same
|
||
grammar).
|
||
Added the full list of all supported attributes, since existing lists
|
||
were incomplete
|
||
Rename "associative array" into "indexed attribute"
|
||
Remove sections that were duplicates ("External References in
|
||
Project Files" and "External Values", and "Project Extensions"
|
||
for instance). The list of valid packages in project files is now in
|
||
a single place.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Add_Internal_Interface_Entities): If
|
||
Find_Primitive_Covering_Interface does not find the operation, it may
|
||
be because of a name conflict between the inherited operation and a
|
||
local non-overloadable name. In that case look for the operation among
|
||
the primitive operations of the type. This search must succeed
|
||
regardless of visibility.
|
||
|
||
2010-06-22 Pascal Obry <obry@adacore.com>
|
||
|
||
* g-socthi-mingw.adb: Properly honor MSG_WAITALL in recvmsg.
|
||
(C_Recvmsg): Propely honor the MSG_WAITALL flag in Windows
|
||
recvmsg emulation.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Conditional_Expression): Defend against
|
||
malformed tree.
|
||
* sprint.adb (Sprint_Node_Actual, case N_Conditional_Expression):
|
||
Ditto.
|
||
|
||
2010-06-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-intman-vxworks.ads: Code clean up.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Slice): When the prefix is an explicit
|
||
dereference, construct actual subtype of designated object to generate
|
||
proper bounds checks.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* ali-util.adb, ali-util.ads, gnatbind.adb (Read_ALI): Rename to
|
||
Read_Withed_ALIs, which is more descriptive.
|
||
|
||
2010-06-22 Pascal Obry <obry@adacore.com>
|
||
|
||
* g-sothco.ads: Minor reformatting.
|
||
* g-socthi-mingw.adb: Remove part of work on the C_Recvmsg and
|
||
C_Sendmsg implementation.
|
||
(C_Sendmsg): Do not use lock (not needed).
|
||
(C_Recvmsg): Likewise and also do not wait for incoming data.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* uintp.adb: Fix scope error in operator call.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* makeutl.adb (Executable_Prefix_Path): on VMS, return "/gnu/".
|
||
* prj-conf.adb (Get_Or_Create_Configuration_File): On VMS, if
|
||
autoconfiguration is needed, fail indicating that no config project
|
||
file can be found, as there is no autoconfiguration on VMS.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Make_Call_Into_Operator): Diagnose an incorrect scope
|
||
for an operator in a functional notation, when operands are universal.
|
||
|
||
2010-06-22 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_aggr.adb (Resolve_Record_Aggregate): Do style check on component
|
||
name.
|
||
* sem_ch10.adb (Analyze_Subunit): Do style check on parent unit name.
|
||
* sem_ch8.adb (Find_Direct_Name): For non-overloadable entities, do
|
||
style check.
|
||
* sem_res.adb (Resolve_Entity_Name): Do style check for enumeration
|
||
literals.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Scan_Make_Arg): No longer pass -nostdlib to the compiler as
|
||
it has no effect. Always pass -nostdlib to gnatlink, even on VMS.
|
||
|
||
2010-06-22 Pascal Obry <obry@adacore.com>
|
||
|
||
* g-socthi-mingw.adb: Fix implementation of the vectored sockets on
|
||
Windows.
|
||
(C_Recvmsg): Make sure the routine is atomic. Also fully
|
||
fill vectors in the proper order.
|
||
(C_Sendmsg): Make sure the routine is atomic.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch8.adb: Update comment.
|
||
* sem_res.adb: Minor code reorganization (use Ekind_In).
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Add_Implicit_Operator): If the context of the expanded
|
||
name is a call, use the number of actuals to determine whether this is
|
||
a binary or unary operator, rather than relying on later information
|
||
to resolve the overload.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch10.adb, sem_aggr.adb: Minor reformatting.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb, sem_disp.adb: Minor code fixes.
|
||
* sem_eval.adb: Minor reformatting.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Scan_Make_Arg): When invoked with -nostdlib, pass -nostdlib
|
||
to gnatlink, except on Open VMS.
|
||
* osint.adb (Add_Default_Search_Dirs): Do not suppress the default
|
||
object directories if -nostdlib is used.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.adb (Is_Delegate): Put in proper alpha order.
|
||
* sem_eval.adb: Minor reformatting.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-expect-vms.adb, sem_res.adb: Minor reformatting.
|
||
* exp_aggr.adb: Minor comment changes and reformatting.
|
||
* sem_eval.adb (Find_Universal_Operator_Type): Put in proper alpha
|
||
order.
|
||
* sem_util.ads: Add some missing pragma Inline's.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_util.adb (Build_Actual_Subtype): Record original expression in
|
||
Related_Expression attribute of the constructed subtype.
|
||
* einfo.adb, einfo.ads (Underlying_View): Move to Node28 to free up
|
||
Node24 on types for...
|
||
(Related_Expression): Make attribute available on types as well.
|
||
|
||
2010-06-22 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* exp_util.adb (Find_Interface_ADT): Retrieve Designated_Type instead
|
||
of Directly_Designated_Type when the type argument is an access type.
|
||
(Find_Interface_Tag): Retrieve Designated_Type instead of
|
||
Directly_Designated_Type when the type argument is an access type.
|
||
(Has_Controlled_Coextensions): Retrieve Designated_Type instead of
|
||
Directly_Designated_Type of each access discriminant.
|
||
* sem_res.adb (Resolve_Type_Conversion): Retrieve Designated_Type
|
||
instead of Directly_Designated_Type when the operand and target types
|
||
are access types.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_aggr.adb (Flatten): Return False if one choice is statically
|
||
known to be out of bounds.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Call): If the call is rewritten as an indexed of
|
||
a parameterless function call, preserve parentheses of original
|
||
expression, for proper handling by pretty printer.
|
||
* sem_attr.adb (Analyze_Attribute, case 'Old): Add guard to Process
|
||
procedure, to handle quietly identifiers that have no entity names.
|
||
* exp_util.adb (Get_Current_Value_Condition): If the parent of an
|
||
elsif_part is missing, it has been rewritten as a nested if, and there
|
||
is no useful information on the current value of the variable.
|
||
|
||
2010-06-22 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Discriminal): Set default scopes for newly created
|
||
discriminals to the current scope.
|
||
* sem_util.adb (Find_Body_Discriminal): Remove setting of discriminal's
|
||
scope, which could overwrite a different already set value.
|
||
|
||
2010-06-22 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Valid_Conversion): If expression is a predefined
|
||
operator, use sloc of type of interpretation to improve error message
|
||
when operand is of some derived type.
|
||
* sem_eval.adb (Is_Mixed_Mode_Operand): New function, use it.
|
||
|
||
2010-06-22 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-expect-vms.adb (Expect_Internal): No longer raises an exception, so
|
||
that it can set out parameters as well. When a process has died, reset
|
||
its Input_Fd to Invalid_Fd, so that when using multiple processes we
|
||
can find out which process has died.
|
||
|
||
2010-06-22 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_eval.adb (Find_Universal_Operator_Type): New
|
||
subprogram to identify the operand type of an operator on universal
|
||
operands, when an explicit scope indication is present. Diagnose the
|
||
case where such a call is ambiguous.
|
||
(Eval_Arithmetic_Op, Eval_Relational_Op, Eval_Unary_Op):
|
||
Use the above to identify the operand type so it can be properly
|
||
frozen.
|
||
* sem_res.adb (Make_Call_Into_Operator): Remove bogus freeze of operand
|
||
type, done in an arbitrary, possibly incorrect type (the presence of
|
||
some numeric type in the scope is checked for legality, but when more
|
||
than one such type is in the scope, we just pick a random one, not
|
||
necessarily the expected one).
|
||
* sem_utils.ads, sem_utils.adb (Is_Universal_Numeric_Type): New utility
|
||
subprogram.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_eval.adb: Minor reformatting.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Conditional_Expression): Use
|
||
Expression_With_Actions to clean up the code generated when folding
|
||
constant expressions.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* g-expect-vms.adb: Add new subprograms Free, First_Dead_Process and
|
||
Has_Process.
|
||
|
||
2010-06-22 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Find_Sources): When a source from a multi-unit file is
|
||
found, check if it's path has aready been found, whatever its index.
|
||
|
||
2010-06-22 Robert Dewar <dewar@adacore.com>
|
||
|
||
* atree.adb, gnatbind.adb: Minor reformatting.
|
||
Minor code reorganization.
|
||
|
||
2010-06-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Conditional_Expression): Fold if condition
|
||
known at compile time.
|
||
|
||
2010-06-21 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* atree.adb: Fix comment typo.
|
||
|
||
2010-06-21 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_eval.adb (Test_Ambiguous_Operator): New procedure to check
|
||
whether a universal arithmetic expression in a conversion, which is
|
||
rewritten from a function call with an expanded name, is ambiguous.
|
||
|
||
2010-06-21 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Name_Location): New Boolean component Listed, to record
|
||
source files in specified list of sources.
|
||
(Check_Package_Naming): Remove out parameters Bodies and Specs, as they
|
||
are never used.
|
||
(Add_Source): Set the Location of the new source
|
||
(Process_Exceptions_File_Based): Call Add_Source with the Location
|
||
(Get_Sources_From_File): If an exception is found, set its Listed to
|
||
True
|
||
(Find_Sources): When Source_Files is specified, if an exception is
|
||
found, set its Listed to True. Remove any exception that is not in a
|
||
specified list of sources.
|
||
* prj.ads (Source_Data): New component Location
|
||
|
||
2010-06-21 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatbind.adb (Closure_Sources): Global table, moved from block.
|
||
|
||
2010-06-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb: Minor reformatting.
|
||
* atree.adb: New debugging hook "rr" for node rewrites.
|
||
|
||
2010-06-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-expect.ads, g-expect.adb: Minor reformatting.
|
||
|
||
2010-06-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* s-regpat.adb (Next_Pointer_Bytes): New named constant. Code clean up.
|
||
|
||
2010-06-21 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* bindgen.ads: Update comments.
|
||
|
||
2010-06-21 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatbind.adb: Suppress dupicates when listing the sources in the
|
||
closure (switch -R).
|
||
|
||
2010-06-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* s-regpat.adb (Link_Tail): Fix error when size of the pattern matcher
|
||
is too small.
|
||
|
||
2010-06-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* g-expect.adb, g-expect.ads (First_Dead_Process, Free, Has_Process):
|
||
New subprograms.
|
||
(Expect_Internal): No longer raises an exception, so that it can set
|
||
out parameters as well. When a process has died, reset its Input_Fd
|
||
to Invalid_Fd, so that when using multiple processes we can find out
|
||
which process has died.
|
||
|
||
2010-06-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-regpat.adb, s-tpoben.adb, sem_attr.adb, sem_util.adb, sem_util.ads,
|
||
checks.adb, sem_res.adb: Minor reformatting. Add comments.
|
||
|
||
2010-06-21 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (New_Overloaded_Entity): If the new entity is a
|
||
rederivation associated with a full declaration in a private part, and
|
||
there is a partial view that derives the same parent subprogram, the
|
||
new entity does not become visible. This check must be applied to
|
||
interface operations as well.
|
||
|
||
2010-06-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* checks.adb: Add comments.
|
||
* prj-nmsc.adb: Minor reformatting.
|
||
|
||
2010-06-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch9.adb, checks.adb, sem_util.adb, sem_util.ads, sem_res.adb,
|
||
sem_attr.adb (Get_E_First_Or_Last): Use attribute references on E to
|
||
extract bounds, to ensure that we get the proper captured values,
|
||
rather than an expression that may have changed value since the point
|
||
where the subtype was elaborated.
|
||
(Find_Body_Discriminal): New utility subprogram to share code
|
||
between...
|
||
(Eval_Attribute): For the case of a subtype bound that references a
|
||
discriminant of the current concurrent type, insert appropriate
|
||
discriminal reference.
|
||
(Resolve_Entry.Actual_Index_Type.Actual_Discriminant_Ref): For a
|
||
requeue to an entry in a family in the current task, use corresponding
|
||
body discriminal.
|
||
(Analyze_Accept_Statement): Rely on expansion of attribute references
|
||
to insert proper discriminal references in range check for entry in
|
||
family.
|
||
|
||
2010-06-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* s-regpat.adb (Compile): Fix handling of big patterns.
|
||
|
||
2010-06-21 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-tifiio.adb: Minor reformatting.
|
||
|
||
2010-06-21 Pascal Obry <obry@adacore.com>
|
||
|
||
* prj-nmsc.adb (Search_Directories): Use the non-translated directory
|
||
path to open it.
|
||
|
||
2010-06-21 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Write_Call_Info): Fill the component sourcename using the
|
||
external name.
|
||
|
||
2010-06-21 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_Concatenate): If an object declaration is created
|
||
to hold the result, indicate that the target of the declaration does
|
||
not need an initialization, to prevent spurious errors when
|
||
Initialize_Scalars is enabled.
|
||
|
||
2010-06-21 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* a-tifiio.adb (Put): In the procedure that performs I/O on a String,
|
||
Fore is not bound by line length. The Fore parameter of the internal
|
||
procedure that performs the operation is an integer.
|
||
|
||
2010-06-21 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb, checks.adb: Minor reformatting.
|
||
|
||
2010-06-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* s-regpat.adb (Next_Instruction, Get_Next_Offset): Removed, merged
|
||
into Get_Next.
|
||
(Insert_Operator_Before): New subprogram, avoids duplicated code
|
||
(Compile): Avoid doing two compilations when the pattern matcher ends
|
||
up being small.
|
||
|
||
2010-06-21 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* s-regpat.adb: Improve debug traces
|
||
(Dump): Change output format to keep it smaller.
|
||
|
||
2010-06-21 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Generate_CG_Output): Disable redirection of standard
|
||
output to the output file when this routine completes its work.
|
||
|
||
2010-06-20 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Use while instead of
|
||
for loop. Call build_constructor_from_list directly in the CICO case.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* freeze.adb (Build_And_Analyze_Renamed_Body): If the renaming
|
||
declaration appears in the same unit and ealier than the renamed
|
||
entity, retain generated body to prevent order-of-elaboration issues in
|
||
gigi.
|
||
|
||
2010-06-18 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-tpoben.adb: Update comments.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: Minor comment change.
|
||
|
||
2010-06-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb: Code clean up.
|
||
* debug.adb: Complete documentation of switch -gnatd.Z.
|
||
* gcc-interface/misc.c (callgraph_info_file): Declare.
|
||
|
||
2010-06-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb (Homonym_Suffix_Length): Minor code reorganization.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sprint.ads: Minor reformatting.
|
||
* output.ads: Update obsolete comment.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* freeze.adb (Build_And_Analyze_Renamed_Body): if the renamed entity is
|
||
an external intrinsic operation (e.g. a GCC numeric function) indicate
|
||
that the renaming entity has the same characteristics, so a call to it
|
||
is properly expanded.
|
||
|
||
2010-06-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_cg.adb, exp_cg.ads, exp_disp.adb, gnat1drv.adb: Add initial
|
||
support for dispatch table/callgraph info generation.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch6.adb: Minor reformatting.
|
||
* gnatname.adb: Add comment.
|
||
|
||
2010-06-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatname.adb (Scan_Args): When --and is used, make sure that the
|
||
dynamic tables in the newly allocated Argument_Data are properly
|
||
initialized.
|
||
|
||
2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnat1drv.adb: Fix comment.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_Inlined_Call): If the inlined subprogram is a
|
||
renaming, re-expand the call with the renamed subprogram if that one
|
||
is marked inlined as well.
|
||
|
||
2010-06-18 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* gnat1drv.adb (Adjust_Global_Switches): Enable
|
||
Use_Expression_With_Actions for AAMP and VM targets.
|
||
|
||
2010-06-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Process_Linker): Recognize response file format GCC.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch4.adb: Minor reformatting.
|
||
|
||
2010-06-18 Javier Miranda <miranda@adacore.com>
|
||
|
||
* debug.ads Add documentation on -gnatd.Z.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_elim.adb: Proper error message on improperly eliminated instances
|
||
|
||
2010-06-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj.ads (Response_File_Format): New value GCC.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* gnat1drv.adb: Minor reformatting.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* make.adb, sem_cat.adb: Minor reformatting.
|
||
* sem_eval.adb: Fix typos.
|
||
|
||
2010-06-18 Pascal Obry <obry@adacore.com>
|
||
|
||
* prj-nmsc.adb: Fix source filenames casing in debug output.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnatcmd.adb: Minor reformatting.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_eval.adb (Eval_Conditional_Expression): Result is static if
|
||
condition and both sub-expressions are static (and result is selected
|
||
expression).
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-pehage.adb: Minor reformatting
|
||
|
||
2010-06-18 Pascal Obry <obry@adacore.com>
|
||
|
||
* prj-nmsc.adb (Search_Directories): Insert canonical filenames into
|
||
source hash table.
|
||
|
||
2010-06-18 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update
|
||
dependencies. Fix target pairs on darwin.
|
||
(gnatlib-sjlj, gnatlib-zcx): Pass THREAD_KIND.
|
||
|
||
2010-06-18 Pascal Obry <obry@adacore.com>
|
||
|
||
* make.adb, prj-nmsc.adb: Fix source filenames casing in debug output.
|
||
|
||
2010-06-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb: For gnatcheck, add -gnatec= switch for a global
|
||
configuration pragmas file and, if -U is not used, for a local one.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_elim.adb (Check_Eliminated): Use full information on entity name
|
||
when it is given in the pragma by a selected component.
|
||
(Check_For_Eliminated_Subprogram): Do no emit error if within a
|
||
instance body that is itself within a generic unit.
|
||
* sem_ch12.adb (Analyze_Subprogram_Instance): If the subprogram is
|
||
eliminated, mark as well the anonymous subprogram that is its alias
|
||
and appears within the wrapper package.
|
||
|
||
2010-06-18 Bob Duff <duff@adacore.com>
|
||
|
||
* g-pehage.ads, g-pehage.adb (Produce): Clean up some of the code.
|
||
Raise an exception if the output file cannot be opened. Add comments.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_cat.adb (Validate_Object_Declaration): A variable declaration is
|
||
not illegal per E.2.2(7) if it occurs in the private part of a
|
||
Remote_Types unit.
|
||
|
||
2010-06-18 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* par-ch9.adb, sem_aggr.adb, sem_ch3.adb, layout.adb, sem_ch4.adb,
|
||
sem_ch5.adb, sem_mech.adb, exp_util.adb, par-ch10.adb, sem_ch6.adb,
|
||
par-ch11.adb, sem_ch7.adb, par-prag.adb, exp_disp.adb, par-ch12.adb,
|
||
sem_ch8.adb, style.adb, sem_ch9.adb, sem_ch10.adb, prep.adb,
|
||
sem_warn.adb, par-util.adb, scng.adb, sem_eval.adb, checks.adb,
|
||
sem_prag.adb, sem_ch12.adb, styleg.adb, sem_ch13.adb, par-ch3.adb,
|
||
par-tchk.adb, freeze.adb, sfn_scan.adb, par-ch4.adb, sem_util.adb,
|
||
sem_res.adb, par-ch5.adb, lib-xref.adb, sem_attr.adb, par-ch6.adb,
|
||
sem_disp.adb, prepcomp.adb, par-ch7.adb, sem_elab.adb, exp_ch4.adb,
|
||
errout.ads: Update comments. Minor reformatting.
|
||
|
||
* g-spipat.adb, a-swunau.adb, a-swunau.ads, g-spitbo.adb,
|
||
a-szunau.adb, a-szunau.ads, a-stunau.adb, a-stunau.ads,
|
||
a-strunb.adb (Big_String. Big_String_Access): New type.
|
||
|
||
* par-labl.adb, restrict.adb, s-osinte-hpux-dce.ads, sem_ch11.adb,
|
||
exp_pakd.adb, s-filofl.ads, par-endh.adb, exp_intr.adb, sem_cat.adb,
|
||
sem_case.adb, exp_ch11.adb, s-osinte-linux.ads: Fix copyright notices.
|
||
|
||
2010-06-18 Geert Bosch <bosch@adacore.com>
|
||
|
||
* i-forbla-darwin.adb: Include -lgnala and -lm in linker options for
|
||
Darwin.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat1drv.adb (Adjust_Global_Switches): Set Use_Expression_With_Actions
|
||
true for gcc.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sprint.adb: Minor format change for N_Expression_With_Actions.
|
||
* repinfo.adb: Minor reformatting.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_elim.adb (Check_Eliminated): If within a subunit, use
|
||
Defining_Entity to obtain the name of the entity in the proper body, to
|
||
properly handle both separate packages and subprograms.
|
||
|
||
2010-06-18 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb (Check_File): New parameter Display_Path.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* g-socket.adb, g-socket.ads (Null_Selector): New object.
|
||
|
||
2010-06-18 Pascal Obry <obry@adacore.com>
|
||
|
||
* gnat_ugn.texi: Minor clarification.
|
||
|
||
2010-06-18 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-nmsc.adb (Find_Source_Dirs): Minor refactoring to avoid duplicate
|
||
code when using the project dir as the source dir.
|
||
(Search_Directories): use the normalized name for the source directory,
|
||
where symbolic names have potentially been resolved.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Conditional_Expression): Clear Actions field
|
||
when we create N_Expression_With_Actions node.
|
||
(Expand_Short_Circuit): Ditto.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_util.adb: Minor reformatting.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* types.ads: Clean up obsolete comments
|
||
* tbuild.adb: Minor reformatting.
|
||
* exp_ch5.adb, sem_intr.adb, sem_ch10.adb, rtsfind.adb, s-shasto.adb,
|
||
exp_strm.adb, aa_drive.adb: Minor reformatting.
|
||
* sem_res.adb (Is_Predefined_Operator): An operator that is an imported
|
||
intrinsic with an Interface_Name denotes an imported back-end builtin,
|
||
and must be rewritten into a call, not left in the tree as an operator,
|
||
so return False in that case.
|
||
|
||
2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_util.adb (Remove_Side_Effects): Make a copy for an allocator.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* scos.ads: Add proposed output for case expression
|
||
|
||
2010-06-18 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* gnat_ugn.texi: Document that, when using the RTX compiler to generate
|
||
RTSS modules, we need to use the Microsoft linker.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* checks.adb (Safe_To_Capture_In_Parameter_Value): Deal with case
|
||
expression (cannot count on a particular branch being executed).
|
||
* exp_ch4.adb (Expand_N_Case_Expression): New procedure.
|
||
* exp_ch4.ads (Expand_N_Case_Expression): New procedure.
|
||
* exp_util.adb (Insert_Actions): Deal with proper insertion of actions
|
||
within case expression.
|
||
* expander.adb (Expand): Add call to Expand_N_Case_Expression
|
||
* par-ch4.adb Add calls to P_Case_Expression at appropriate points
|
||
(P_Case_Expression): New procedure
|
||
(P_Case_Expression_Alternative): New procedure
|
||
* par.adb (P_Case_Expression): New procedure
|
||
* par_sco.adb (Process_Decisions): Add dummy place holder entry for
|
||
N_Case_Expression.
|
||
* sem.adb (Analyze): Add call to Analyze_Case_Expression
|
||
* sem_case.ads (Analyze_Choices): Also used for case expressions now,
|
||
this is a documentation change only.
|
||
* sem_ch4.ads, sem_ch4.adb (Analyze_Case_Expression): New procedure.
|
||
* sem_ch6.adb (Fully_Conformant_Expressions): Add handling of case
|
||
expressions.
|
||
* sem_eval.ads, sem_eval.adb (Eval_Case_Expression): New procedure.
|
||
* sem_res.adb (Resolve_Case_Expression): New procedure.
|
||
* sem_scil.adb (Find_SCIL_Node): Add processing for
|
||
N_Case_Expression_Alternative.
|
||
* sinfo.ads, sinfo.adb (N_Case_Expression): New node.
|
||
(N_Case_Expression_Alternative): New node.
|
||
* sprint.adb (Sprint_Node_Actual): Add processing for new nodes
|
||
N_Case_Expression and N_Case_Expression_Alternative.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch7.adb, sem_warn.adb, types.ads, par-ch3.adb: Minor
|
||
reformatting.
|
||
* gnat1drv.adb: Fix typo.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-prag.adb (Prag, case Style_Checks): All_Checks sets gnat style
|
||
for -gnatg.
|
||
* sem_prag.adb (Analyze_Pragma, case Style_Checks): All_Checks sets
|
||
gnat style for -gnatg.
|
||
* gnat_rm.texi: Add documentation for ALL_CHECKS in GNAT mode.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_eval.adb (Test_In_Range): New subprogram, factoring duplicated
|
||
code between...
|
||
(Is_In_Range, Is_Out_Of_Range): Reimplement in terms of call to
|
||
Test_In_Range.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sprint.adb: Minor change in output format for expression wi actions.
|
||
* par-ch3.adb: Minor code reorganization. Minor reformatting.
|
||
* sem_ch5.adb: Minor comment fix.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: New debug flag -gnatd.L to control
|
||
Back_End_Handles_Limited_Types.
|
||
* exp_ch4.adb (Expand_N_Conditional_Expression): Let back end handle
|
||
limited case if Back_End_Handles_Limited_Types is True.
|
||
(Expand_N_Conditional_Expression): Use N_Expression_With_Actions to
|
||
simplify expansion if Use_Expression_With_Actions is True.
|
||
* gnat1drv.adb (Adjust_Global_Switches): Set
|
||
Back_End_Handles_Limited_Types.
|
||
* opt.ads (Back_End_Handles_Limited_Types): New flag.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_res.adb (Rewrite_Operator_As_Call): Do not rewrite user-defined
|
||
intrinsic operator if expansion is not enabled, because in an
|
||
instantiation the original operator must be present to verify the
|
||
legality of the operation.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_disp.adb, sem_ch12.adb: Minor reformatting
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_util.adb (Make_Subtype_From_Expr): If the unconstrained type is
|
||
the class-wide type for a private extension, and the completion is a
|
||
subtype, set the type of the class-wide type to the base type of the
|
||
full view.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-socket.ads, sem_aggr.adb, einfo.ads, sem_elim.adb,
|
||
sem_intr.adb, sem_eval.adb: Minor reformatting
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_type.adb (Is_Ancestor): If either type is private, examine full
|
||
view.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* g-socket.adb, g-socket.ads (Check_Selector): Make Selector an IN
|
||
parameter rather than IN OUT.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb: Add extra guard.
|
||
|
||
2010-06-18 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_util.adb (Object_Access_Level): For Ada 2005, determine the
|
||
accessibility level of a function call from the level of the innermost
|
||
enclosing dynamic scope.
|
||
(Innermost_Master_Scope_Depth): New function to find the depth of the
|
||
nearest dynamic scope enclosing a node.
|
||
|
||
2010-06-18 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* adaint.c: Make ATTR_UNSET static as it is not used outside this file.
|
||
|
||
2010-06-18 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* g-socket.ads: Minor reformatting.
|
||
|
||
2010-06-18 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Must_Compile): New Boolean global variable
|
||
(Main_On_Command_Line): New Boolean global variable
|
||
(Collect_Arguments_And_Compile): Do compile if Must_Compile is True,
|
||
even when the project is externally built.
|
||
(Start_Compile_If_Possible): Compile in -aL directories if
|
||
Check_Readonly_Files is True. Do compile if Must_Compile is True, even
|
||
when the project is externally built.
|
||
(Gnatmake): Set Must_Compile and Check_Readonly_Files to True when
|
||
invoked with -f -u and one or several mains on the command line.
|
||
(Scan_Make_Arg): Set Main_On_Command_Line to True when at least one
|
||
main is specified on the command line.
|
||
|
||
2010-06-18 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Build_Body_For_Inline): Handle
|
||
extended_return_statements.
|
||
* exp_ch6.adb (Expand_Inlined_Call): when possible, inline a body
|
||
containing extented_return statements.
|
||
* exp_util.adb (Make_CW_Equivalent_Type): If the root type is already
|
||
constrained, do not build subtype declaration.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb (Analyze_Indexed_Component, Analyze_Selected_Component):
|
||
Warn on assigning to packed atomic component.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.ads: Minor reformatting
|
||
* einfo.ads, einfo.adb: Minor doc clarification (scope of decls in
|
||
Expression_With_Actions).
|
||
* snames.ads-tmpl: Minor comment fix
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb (Diagnose_Multiple_Pragmas): New procedure
|
||
(Set_Imported): Use Import_Interface_Present to control message output
|
||
* sinfo.ads, sinfo.adb (Import_Interface_Present): New flag
|
||
* gnat_rm.texi: Document that we can have pragma Import and pragma
|
||
Interface for the same subprogram.
|
||
|
||
2010-06-18 Robert Dewar <dewar@adacore.com>
|
||
|
||
* lib-xref.adb (Generate_Reference): Fix bad reference to
|
||
Has_Pragma_Unreferenced (clients should always use Has_Unreferenced).
|
||
|
||
2010-06-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (set_gnu_expr_location_from_node): New static
|
||
function.
|
||
(gnat_to_gnu) <N_Expression_With_Actions>: New case.
|
||
Use set_gnu_expr_location_from_node to set location information on the
|
||
result.
|
||
|
||
2010-06-17 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Is_Atomic_Object): Predicate does not apply to
|
||
subprograms.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_rm.texi, gnat_ugn.texi: Clean up documentation on warning and
|
||
style check messages.
|
||
* sem_res.adb (Resolve_Call): Don't call
|
||
Check_For_Eliminated_Subprogram if we are analyzing within a spec
|
||
expression.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: Add documentation for debug flags .X and .Y
|
||
* exp_ch4.adb (Expand_Short_Circuit_Operator): Use
|
||
Use_Expression_With_Actions.
|
||
* gnat1drv.adb (Adjust_Global_Switches): Set
|
||
Use_Expression_With_Actions.
|
||
* opt.ads (Use_Expression_With_Actions): New switch.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_intr.adb: Minor code reorganization (use UI_Max)
|
||
* sem_intr.adb: use underlying type to check legality.
|
||
* einfo.adb (Known_Static_Esize): False for generic types
|
||
(Known_Static_RM_Size): False for generic types
|
||
* einfo.ads (Known_Static_Esize): False for generic types
|
||
(Known_Static_RM_Size): False for generic types
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.ads: Minor code reorganization (specs in alpha order).
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: New debug flag -gnatd.X to use Expression_With_Actions
|
||
node when expanding short circuit form with actions present for right
|
||
opnd.
|
||
* exp_ch4.adb: Minor reformatting
|
||
(Expand_Short_Circuit_Operator): Use new Expression_With_Actions node
|
||
if right opeand has actions present, and debug flag -gnatd.X is set.
|
||
* exp_util.adb (Insert_Actions): Handle case of Expression_With_Actions
|
||
node.
|
||
* nlists.adb (Prepend_List): New procedure
|
||
(Prepend_List_To): New procedure
|
||
* nlists.ads (Prepend_List): New procedure
|
||
(Prepend_List_To): New procedure
|
||
* sem.adb: Add processing for Expression_With_Actions
|
||
* sem_ch4.adb (Analyze_Expression_With_Actions): New procedure
|
||
* sem_ch4.ads (Analyze_Expression_With_Actions): New procedure
|
||
* sem_res.adb: Add processing for Expression_With_Actions.
|
||
* sem_scil.adb: Add processing for Expression_With_Actions
|
||
* sinfo.ads, sinfo.adb (N_Expression_With_Actions): New node.
|
||
* sprint.ads, sprint.adb: Add processing for Expression_With_Actions
|
||
|
||
2010-06-17 Doug Rupp <rupp@adacore.com>
|
||
|
||
* sem_intr.adb (Check_Intrinsic_Operator): Check that the types
|
||
involved both have underlying integer types.
|
||
* exp_intr.adb (Expand_Binary_Operator) New subprogram to expand a call
|
||
to an intrinsic operator when the operand types or sizes are not
|
||
identical.
|
||
* s-auxdec-vms_64.ads: Revert "+" "-" ops back to Address now that
|
||
64/32 Address/Integer works.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Mark_Context): Refine placement of Withed_Body flag, so
|
||
that it marks a unit as needed by a spec only if the corresponding
|
||
instantiation appears in that spec (and not in the corresponding body).
|
||
* sem_elim.adb (Check_Eliminated): If we are within a subunit, the name
|
||
in the pragma Eliminate has been parsed as a child unit, but the
|
||
current compilation unit is in fact the parent in which the subunit is
|
||
embedded.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnat_rm.texi: Fix typo
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_util.adb: Minor reformatting
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb (Do_Withed_Unit): if the unit in the with_clause is a generic
|
||
instance, the clause now denotes the instance body. Traverse the
|
||
corresponding spec because there may be no other dependence that will
|
||
force the traversal of its own context.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch10.adb (Is_Ancestor_Unit): Subsidiary to
|
||
Install_Limited_Context_Clauses, to determine whether a limited_with in
|
||
some parent of the current unit designates some other parent, in which
|
||
case the limited_with clause must not be installed.
|
||
(In_Context): Refine test.
|
||
|
||
2010-06-17 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_util.adb (Collect_Primitive_Operations): In the of an untagged
|
||
type with a dispatching equality operator that is overridden (for a
|
||
tagged full type), don't include the overridden equality in the list of
|
||
primitives. The overridden equality is detected by testing for an
|
||
Aliased field that references the overriding equality.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* freeze.adb: Minor reformatting.
|
||
|
||
2010-06-17 Joel Brobecker <brobecker@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add a section introducing gdbserver.
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb, sem_ch4.adb, s-stoele.adb, par-labl.adb: Minor
|
||
reformatting.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aggr.adb (Valid_Ancestor_Type): handle properly the case of a
|
||
constrained discriminated parent that is a private type.
|
||
(Analyze_Record_Aggregate): when collecting inherited discriminants,
|
||
handle properly an ancestor type that is a constrained private type.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util.adb (Enclosing_Subprogram): If the called subprogram is
|
||
protected, use the protected_subprogram_body only if the original
|
||
subprogram has not been eliminated.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* freeze.adb (Freeze_Expression): The designated type of an
|
||
access_to_suprogram type can only be frozen if all types in its profile
|
||
are fully defined.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par.adb: Minor comment fix
|
||
* sem_aggr.adb, sem_ch3.adb: Minor reformatting
|
||
|
||
2010-06-17 Doug Rupp <rupp@adacore.com>
|
||
|
||
* s-auxdec-vms_64.ads: Revert Integer to Long_Integer change, instead
|
||
change Address to Short_Address in functions where both must be the
|
||
same size for intrinsics to work.
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_Selected_Component): A selected component may
|
||
not denote a (private) component of a protected object.
|
||
|
||
2010-06-17 Bob Duff <duff@adacore.com>
|
||
|
||
* par-labl.adb (Try_Loop): Test whether the label and the goto are in
|
||
the same list.
|
||
|
||
2010-06-17 Joel Brobecker <brobecker@adacore.com>
|
||
|
||
* gnat_ugn.texi: Update the documentation about GDB re: exception
|
||
catchpoints.
|
||
|
||
2010-06-17 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnatvsn.ads: Bump to 4.6 version.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): The
|
||
designated type of the generated pointer is the type of the original
|
||
expression, not that of the function call itself, because the return
|
||
type may be an untagged derived type and the function may be an
|
||
inherited operation.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb: Minor reformatting.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sinfo.ads, sinfo.adb (Inherited_Discriminant): New flag on
|
||
N_Component_Association nodes, to indicate that a component association
|
||
of an extension aggregate denotes the value of a discriminant of an
|
||
ancestor type that has been constrained by the derivation.
|
||
* sem_aggr.adb (Discr_Present): use Inherited_Discriminant to prevent a
|
||
double expansion of the aggregate appearing in a context that delays
|
||
expansion, to prevent double insertion of discriminant values when the
|
||
aggregate is reanalyzed.
|
||
|
||
2010-06-17 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Do not use
|
||
Allocator as the Related_Node of Return_Obj_Access in call to
|
||
Make_Temporary below as this would create a sort of infinite
|
||
"recursion".
|
||
|
||
2010-06-17 Ben Brosgol <brosgol@adacore.com>
|
||
|
||
* gnat_ugn.texi: Update gnatcheck doc.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Incomplete_Type_Declaration): If there is an
|
||
incomplete view of the type that is not tagged, and the full type is a
|
||
tagged extension, create class_wide type now, and warn that the
|
||
incomplete view should be tagged as well.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (Non_VMS_Usage): Do not issue usage for gnat sync.
|
||
Update the last line of the usage, indicating what commands do not
|
||
accept project file switches.
|
||
* vms_conv.adb: Do not issue usage line for GNAT SYNC
|
||
* vms_data.ads: Fix errors in the qualifiers /LOGFILE and /MAIN of
|
||
GNAT ELIM.
|
||
* gnat_ugn.texi: Document the relaxed rules for library directories in
|
||
externally built library projects.
|
||
|
||
2010-06-17 Doug Rupp <rupp@adacore.com>
|
||
|
||
* s-auxdec-vms_64.ads: Make boolean and arithmetic operations intrinsic
|
||
where possible.
|
||
* s-auxdec-vms-alpha.adb: Remove kludges for aforemention.
|
||
* gcc-interface/Makefile.in: Update VMS target pairs.
|
||
|
||
2010-06-17 Vasiliy Fofanov <fofanov@adacore.com>
|
||
|
||
* adaint.c: Reorganized in order to avoid use of GetProcessId to stay
|
||
compatible with Windows NT 4.0 which doesn't provide this function.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* ali-util.adb (Time_Stamp_Mismatch): In Verbose mode, if there is
|
||
different timestamps but the checksum is the same, issue a short
|
||
message saying so.
|
||
|
||
2010-06-17 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-interr.adb (Finalize): If the Abort_Task signal is set to system,
|
||
it means that we cannot reset interrupt handlers since this would
|
||
require potentially sending the abort signal to the Server_Task.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch4.adb: expand NOT for VMS types.
|
||
* sem_util.adb: Use OpenVMS_On_Target for IS_VMS_Operator.
|
||
|
||
2010-06-17 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* vms_data.ads: Add qualifier for '--no-elim-dispatch' gnatelim option.
|
||
* gnat_ugn.texi (gnatelim): add description for --no-elim-dispatch
|
||
option.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_ch6.adb (Expand_Call): Do not expand a call to an internal
|
||
protected operation if the subprogram has been eliminated.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Check_Library_Attributes): Allow the different
|
||
directories associated with a library to be any directory when the
|
||
library project is externally built.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Check): If switch -m is used, deallocate the memory that
|
||
may be allocated when computing the checksum.
|
||
|
||
2010-06-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* g-socthi-mingw.adb (C_Recvmsg): Add 'use type' clause for C.size_t;
|
||
(C_Sendmsg): Likewise.
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb: Update comments.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* back_end.adb (Scan_Compiler_Arguments): Process last argument
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch3.adb, exp_ch6.adb, exp_smem.adb, exp_util.adb: Use Ekind_In.
|
||
* layout.adb, freeze.adb: Use Make_Temporary.
|
||
|
||
2010-06-17 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* exp_ch11.adb (Expand_N_Raise_Statement): Expand raise statements in
|
||
.NET/JVM normally as this is now perfectly supported by the backend.
|
||
|
||
2010-06-17 Pascal Obry <obry@adacore.com>
|
||
|
||
* gnat_rm.texi: Fix minor typo, remove duplicate blank lines.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* make.adb (Collect_Arguments_And_Compile): Create include path file
|
||
only when -x is specified.
|
||
(Gnatmake): Ditto
|
||
* opt.ads (Use_Include_Path_File): New Boolean flag, initialized to
|
||
False.
|
||
* prj-env.adb (Set_Ada_Paths): New Boolean parameters Include_Path and
|
||
Objects_Path, defaulted to True. Only create include path file if
|
||
Include_Path is True, only create objects path file if Objects_Path is
|
||
True.
|
||
* prj-env.ads (Set_Ada_Paths): New Boolean parameters Include_Path and
|
||
Objects_Path, defaulted to True.
|
||
* switch-m.adb (Scan_Make_Switches): Set Use_Include_Path_File to True
|
||
when -x is used.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_disp.adb (Build_Interface_Thunk): Use base type of formal to
|
||
determine whether it has the controlling type, when the formal is an
|
||
access parameter.
|
||
|
||
2010-06-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* s-crtl.ads (ssize_t): New type.
|
||
(read): Fix signature.
|
||
(write): Likewise.
|
||
* g-socthi.ads: Add 'with System.CRTL' clause. Remove ssize_t and
|
||
'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
|
||
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi.adb (Syscall_Recvmsg): Likewise.
|
||
(Syscall_Sendmsg): Likewise.
|
||
(C_Recvmsg): Likewise.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi-mingw.ads: Add 'with System.CRTL' clause. Remove ssize_t
|
||
and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
|
||
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi-mingw.adb (C_Recvmsg): Likewise.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi-vms.ads: Add 'with System.CRTL' clause. Remove ssize_t and
|
||
'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
|
||
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi-vms.adb (C_Recvmsg): Likewise.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi-vxworks.ads Add 'with System.CRTL' clause. Remove ssize_t
|
||
and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
|
||
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
|
||
(C_Sendmsg): Likewise.
|
||
* g-socthi-vxworks.adb (C_Recvmsg): Likewise.
|
||
(C_Sendmsg): Likewise.
|
||
* g-sercom-linux.adb (Read): Use correct types to call 'read'.
|
||
(Write): Likewise to call 'write'.
|
||
* s-os_lib.adb (Read): Use correct type to call System.CRTL.read.
|
||
(Write): Use correct type to call System.CRTL.write.
|
||
* s-tasdeb.adb (Write): Likewise.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-proc.adb (Copy_Package_Declarations): Change argument name
|
||
Naming_Restricted to Restricted. If Restricted is True, do not copy the
|
||
value of attribute Linker_Options.
|
||
|
||
2010-06-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (push_stack, pop_stack): Delete.
|
||
(Case_Statement_to_gnu): Adjust.
|
||
(Loop_Statement_to_gnu): Likewise.
|
||
(Subprogram_Body_to_gnu): Likewise.
|
||
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
|
||
(Compilation_Unit_to_gnu): Likewise.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb, exp_prag.adb,
|
||
exp_sel.adb, exp_util.adb, sem_ch10.adb, sem_ch12.adb, sem_ch13.adb,
|
||
sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch8.adb, sem_ch9.adb,
|
||
sem_dist.adb, sem_util.adb: Use Make_Temporary
|
||
* itypes.ads, tbuild.ads: Minor comment update
|
||
* exp_ch9.adb, exp_dist.adb: Minor reformatting
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_imgv.adb, exp_ch7.ads: Minor reformatting.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch9.adb, exp_disp.adb, exp_dist.adb: Use Make_Temporary.
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sprint.adb (pg): Set Dump_Freeze_Null, to be consistent with -gnatdg.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch6.adb, exp_ch7.adb, exp_ch5.adb: Use Make_Temporary
|
||
* tbuild.ads (Make_Temporary): More comment updates
|
||
* tbuild.adb: Minor reformatting
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* checks.adb, exp_aggr.adb, exp_atag.adb, exp_attr.adb, exp_ch11.adb,
|
||
exp_ch3.adb, exp_ch4.adb: Minor code reorganization.
|
||
Use Make_Temporary.
|
||
* tbuild.ads, tbuild.adb (Make_Temporary): Clean up, use Entity_Id
|
||
instead of Node_Id.
|
||
(Make_Temporary): Add more extensive documentation
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_intr.adb, sem_prag.adb, sem_res.adb, sem_type.adb, sem_util.adb,
|
||
sem_warn.adb, sem_eval.adb: Minor reformatting. Use Ekind_In.
|
||
(Set_Slice_Subtype): Explicitly freeze the slice's itype at the point
|
||
where the slice's actions are inserted.
|
||
(Decompose_Expr): Account for possible rewriting of slice bounds
|
||
resulting from side effects suppression caused by the above freezing,
|
||
so that folding of bounds is preserved by such rewriting.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.ads, einfo.adb (Get_Record_Representation_Clause): New
|
||
function.
|
||
* freeze.adb (Freeze_Record_Type): Add call to
|
||
Check_Record_Representation_Clause.
|
||
* sem_ch13.adb (Check_Record_Representation_Clause): New function
|
||
(Analyze_Record_Representation_Clause): Split out overlap code into
|
||
this new function.
|
||
(Check_Component_Overlap): Moved inside
|
||
Check_Record_Representation_Clause.
|
||
* sem_ch13.ads (Check_Record_Representation_Clause): New function.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* back_end.adb, sem_res.adb, switch-c.adb, sem_scil.adb: Minor
|
||
reformatting.
|
||
* sem_attr.adb, sem_cat.adb, sem_disp.adb, sem_elab.adb, sem_elim.adb,
|
||
sem_eval.adb: Use Ekind_In
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb: better error message for illegal inherited discriminant
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* bindusg.adb: Remove lines for -A and -C
|
||
* gnat_ugn.texi: Remove all documentation and examples of switches -A
|
||
and -C for gnatbind and gnatlink.
|
||
* gnatlink.adb (Usage): Remove lines for -A and -C
|
||
* switch-b.adb (Scan_Binder_Switches): Issue warning when switch -C is
|
||
specified.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* back_end.adb (Scan_Compiler_Arguments): Put all arguments in new
|
||
local Argument_List variable Args.
|
||
* switch-c.adb (Scan_Front_End_Switches): New Argument_List argument
|
||
Args.
|
||
(Switch_Subsequently_Cancelled): New Argument_List argument Args. Look
|
||
for subsequent switches in Args.
|
||
* switch-c.ads (Scan_Front_End_Switches): New Argument_List argument
|
||
Args.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* einfo.adb: Minor code fix, allow E_Class_Wide_Type for
|
||
Equivalent_Type to match documentation.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch6.adb, sem_ch7.adb: Minor reformatting.
|
||
* sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_ch10.adb, sem_ch12.adb,
|
||
sem_ch4.adb, sem_ch8.adb, sem_ch13.adb: Make use of Ekind_In.
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_res.adb (Set_Slice_Subtype): Always freeze the slice's itype.
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* freeze.adb (Freeze_Expression): Short circuit operators are valid
|
||
freeze node insertion points.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* switch-c.ads, switch-c.adb, sem_ch13.adb: Minor reformatting.
|
||
* sem_ch12.adb: Add pragmas Assert and Check to previous change.
|
||
|
||
2010-06-17 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* layout.adb (Layout_Type): Broaden test for setting an array type's
|
||
Component_Size to include all scalar types, not just discrete types
|
||
(components of real types were missed).
|
||
* sem_ch3.adb (Constrain_Index): Add missing setting of First_Literal
|
||
on the itype created for an index (consistent with Make_Index and
|
||
avoids possible Assert_Failures).
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* atree.ads, atree.adb: Add 6-parameter version of Ekind_In
|
||
* einfo.adb: Minor code reformatting (use Ekind_In)
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_warn.adb (Test_Ref): Abandon scan if access subprogram parameter
|
||
found.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* back_end.adb: Minor comment updates
|
||
* switch-c.adb: Remove dependencies on gcc C sources
|
||
* gcc-interface/Make-lang.in: Add a-comlin.o to the object file list
|
||
for the compiler.
|
||
|
||
2010-06-17 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb: propagate Pragma_Enabled flag to generic.
|
||
* get_scos.adb: Set C2 flag in decision entry of pragma to 'e'.
|
||
* par_sco.ads, par_sco.adb (Set_SCO_Pragma_Enabled): New procedure
|
||
Remove use of Node field in SCOs table
|
||
(Output_Header): Set 'd' to initially disable pragma entry
|
||
* put_scos.adb (Put_SCOs): New flag indicating if pragma is enabled
|
||
* scos.ads, scos.adb: Remove Node field from internal SCOs table.
|
||
Use C2 field of pragma decision header to indicate enabled.
|
||
* sem_prag.adb: Add calls to Set_SCO_Pragma_Enabled.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-17 Vincent Celier <celier@adacore.com>
|
||
|
||
* back_end.adb (Next_Arg): Moved to procedure Scan_Compiler_Arguments
|
||
(Scan_Compiler_Arguments): Call Scan_Front_End_Switches with Next_Arg
|
||
(Switch_Subsequently_Cancelled): Function moved to the body of Switch.C
|
||
* back_end.ads (Scan_Front_End_Switches): Function moved to the body of
|
||
Switch.C.
|
||
* switch-c.adb: Copied a number of global declarations from
|
||
back_end.adb.
|
||
(Len_Arg): New function copied from back_end.adb
|
||
(Switch_Subsequently_Cancelled): New function moved from back_end.adb
|
||
(Scan_Front_End_Switches): New parameter Arg_Rank used to call
|
||
Switch_Subsequently_Cancelled.
|
||
* switch-c.ads (Scan_Front_End_Switches): New parameter Arg_Rank.
|
||
* gcc-interface/Makefile.in: Add line so that shared libgnat is linked
|
||
with -lexc on Tru64.
|
||
|
||
2010-06-17 Robert Dewar <dewar@adacore.com>
|
||
|
||
* prj.ads, prj.adb: Minor reformatting
|
||
|
||
2010-06-17 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* put_scos.adb: Do not generate a blank line in SCOs when omitting the
|
||
CP line for a disabled pragma.
|
||
|
||
2010-06-17 Emmanuel Briot <briot@adacore.com>
|
||
|
||
* prj-proc.adb, prj.adb, prj.ads (Check_Or_Set_Typed_Variable): New
|
||
subprogram.
|
||
(Process_Declarative_Item): An invalid value in an typed variable
|
||
declaration is no longer always fatal.
|
||
|
||
2010-06-16 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* get_scos.adb, par_sco.adb, par_sco.ads, put_scos.adb, scos.adb,
|
||
scos.ads, exp_ch4.adb, sem_warn.adb: Code clean up, update
|
||
documentation.
|
||
|
||
2010-06-16 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.adb (Expand_Dispatching_Call): Adjust the decoration of the
|
||
node referenced by the SCIL node of dispatching "=" to skip the tags
|
||
comparison.
|
||
|
||
2010-06-16 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch5.adb (Analyze_Exit_Statement): Return if no enclosing loop,
|
||
to prevent cascaded errors and compilation aborts.
|
||
|
||
2010-06-16 Robert Dewar <dewar@adacore.com>
|
||
|
||
* back_end.adb (Switch_Subsequently_Cancelled): New function
|
||
Move declarations to package body level to support this change
|
||
* back_end.ads (Switch_Subsequently_Cancelled): New function
|
||
* gnat_ugn.texi: Document -gnat-p switch
|
||
* switch-c.adb (Scan_Front_End_Switches): Implement -gnat-p switch
|
||
* ug_words: Add entry for -gnat-p (UNSUPPRESS_ALL)
|
||
* usage.adb: Add line for -gnat-p switch
|
||
* vms_data.ads: Add entry for UNSUPPRESS_ALL (-gnat-p)
|
||
|
||
2010-06-16 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_warn.adb (Check_Infinite_Loop_Warning): Declaration counts as
|
||
modification.
|
||
|
||
2010-06-16 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_disp.adb: Minor reformatting
|
||
|
||
2010-06-16 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Complete_Private_Subtype): Inherit class_wide type from
|
||
base type only if it was not previously created for the partial view.
|
||
|
||
2010-06-16 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* tbuild.ads: Minor comment fix
|
||
|
||
2010-06-15 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/trans.c (gnu_stack_free_list): Delete.
|
||
(gnu_except_ptr_stack): Change type to VEC. Update comment.
|
||
(gnu_elab_proc_stack): Likewise.
|
||
(gnu_return_label_stack): Likewise.
|
||
(gnu_loop_label_stack): Likewise.
|
||
(gnu_switch_label_stack): Likewise.
|
||
(gnu_constraint_label_stack): Likewise.
|
||
(gnu_storage_error_label_stack): Likewise.
|
||
(gnu_program_error_label_stack): Likewise.
|
||
(push_exception_label_stack): Take a VEC ** instead of a tree *.
|
||
(push_stack): Likewise. Remove unused second parameter. Update
|
||
callers.
|
||
(pop_stack): Take a VEC * instead of a tree *. Update callers.
|
||
(gigi): Initialize stacks as VECs.
|
||
(Identifier_to_gnu): Use VEC_last instead of TREE_VALUE.
|
||
(Case_Statement_to_gnu): Likewise.
|
||
(Subprogram_Body_to_gnu): Likewise.
|
||
(call_to_gnu): Likewise.
|
||
(Exception_Handler_to_gnu_sjlj): Likewise.
|
||
(gnat_to_gnu): Likewise.
|
||
(get_exception_label): Likewise.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch3.adb (Build_Derived_Record_Type): if derived type is an
|
||
anonymous base generated when the parent is a constrained discriminated
|
||
type, propagate interface list to first subtype because it may appear
|
||
in a current instance within the extension part of the derived type
|
||
declaration, and its own subtype declaration has not been elaborated
|
||
yet.
|
||
* exp_disp.adb (Build_Interface_Thunk): Use base type of formal to
|
||
determine whether it has the controlling type.
|
||
|
||
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* exp_ch11.adb (Expand_N_Raise_Statement): Make sure that the explicit
|
||
raise of CE, SE and PE have the reason correctly set and are properly
|
||
expanded before stopping the expansions of .NET/JVM exceptions.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.ads (Check_Policy_List): Add some clarifying comments
|
||
* sem_prag.adb (Analyze_Pragma, case Check): Set Pragma_Enabled flag
|
||
on rewritten Assert pragma.
|
||
|
||
2010-06-14 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch6.adb (Check_Overriding_Indicator): Add a special check for
|
||
controlled operations, so that they will be treated as overriding even
|
||
if the overridden subprogram is marked Is_Hidden, as long as the
|
||
overridden subprogram's parent subprogram is not hidden.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* debug.adb: Entry for gnatw.d no longer specific for while loops
|
||
* einfo.adb (First_Exit_Statement): New attribute for E_Loop
|
||
* einfo.ads (First_Exit_Statement): New attribute for E_Loop
|
||
* sem_ch5.adb (Analyze_Loop_Statement): Check_Infinite_Loop_Warning has
|
||
new calling sequence to include test for EXIT WHEN.
|
||
(Analyze_Exit_Statement): Chain EXIT statement into exit statement
|
||
chain
|
||
* sem_warn.ads, sem_warn.adb (Check_Infinite_Loop_Warning): Now handles
|
||
EXIT WHEN case.
|
||
* sinfo.adb (Next_Exit_Statement): New attribute of N_Exit_Statement
|
||
node.
|
||
* sinfo.ads (N_Pragma): Correct comment on Sloc field (points to
|
||
PRAGMA, not to pragma identifier).
|
||
(Next_Exit_Statement): New attribute of N_Exit_Statement node
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Short_Circuit): Fix sloc of "assertion/check
|
||
would fail" msg.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par-ch2.adb (Scan_Pragma_Argument_Association): Clarify message for
|
||
missing pragma argument identifier.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* atree.ads, atree.adb (Ekind_In): New functions.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**N in stand alone context
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* usage.adb (Usage): Redo documentation of -gnatwa.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Find_Type): The attribute 'class cannot be applied to
|
||
an untagged incomplete type that is a limited view.
|
||
|
||
2010-06-14 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi: Add description of '-cargs gcc_switches' to gnatstub
|
||
and gnatppa.
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_ch4.adb (Expand_Short_Circuit_Operator): New subprogram,
|
||
factoring duplicated code between...
|
||
(Expand_N_And_Than, Expand_N_Or_Else): Remove duplicated code.
|
||
* a-envvar.ads: Minor reformatting
|
||
|
||
2010-06-14 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* ali.adb, ali.ads, lib-xref.ads: Document new '+' letter for C/C++
|
||
static entities.
|
||
(Scan_ALI): Take into account new Visibility field.
|
||
(Visibility_Kind): New type.
|
||
(Xref_Entity_Record): Replace Lib field by Visibility.
|
||
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-14 Pascal Obry <obry@adacore.com>
|
||
|
||
* raise.h: Remove unused defintions.
|
||
|
||
2010-06-14 Bob Duff <duff@adacore.com>
|
||
|
||
* par-ch10.adb (P_Subunit): If the next token after "separate(X)" is
|
||
Tok_Not or Tok_Overriding, call P_Subprogram. We had previously given
|
||
the incorrect error "proper body expected".
|
||
* par-ch6.adb (P_Subprogram): Suppress "overriding indicator not
|
||
allowed here" error in case of subunits, which was triggered by the
|
||
above change to P_Subunit.
|
||
|
||
2010-06-14 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi, vms_data.ads: Update gnatelim doc.
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* lib-util.adb: Minor code reorganization.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* ali.adb (Scan_ALI): Implement reading and storing of N lines
|
||
(Known_ALI_Lines): Add entry for 'N' (notes)
|
||
* ali.ads (Notes): New table to store Notes information
|
||
* alloc.ads: Add entries for Notes table
|
||
* lib-util.adb (Write_Info_Int): New procedure
|
||
(Write_Info_Slit): New procedure
|
||
(Write_Info_Uint): New procedure
|
||
* lib-util.ads (Write_Info_Int): New procedure
|
||
(Write_Info_Slit): New procedure
|
||
(Write_Info_Uint): New procedure
|
||
* lib-writ.adb (Write_Unit_Information): Output N (notes) lines
|
||
* lib-writ.ads: Update documentation for N (Notes) lines
|
||
* lib.adb (Store_Note): New procedure
|
||
* lib.ads (Notes): New table
|
||
(Store_Note): New procedure
|
||
* sem_prag.adb: Call Store_Note for affected pragmas
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* socket.c: Fix wrong condition in #ifdef
|
||
* g-socket.adb, g-sothco.ads: Functions imported from socket.c that
|
||
take or return char* values can't use Interfaces.C.Strings.chars_ptr,
|
||
because on VMS this type is a 32-bit pointer which is not compatible
|
||
with the default for C pointers for code compiled with gcc on that
|
||
platform.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_util (Is_VMS_Operator): New predicate to determine whether an
|
||
operator is an intrinsic operator declared in the DEC system extension.
|
||
* sem_res.adb (Resolve_Logical_Op): operation is legal on signed types
|
||
if the operator is a VMS intrinsic.
|
||
* sem_eval.adb (Eval_Logical_Op): Operation is legal and be
|
||
constant-folded if the operands are signed and the operator is a VMS
|
||
intrinsic.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-socket.adb, gnatcmd.adb: Minor reformatting.
|
||
|
||
2010-06-14 Pascal Obry <obry@adacore.com>
|
||
|
||
* s-finimp.adb: Fix typo.
|
||
* raise.h: Remove duplicate blank line.
|
||
|
||
2010-06-14 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-nmsc.adb (Add_Sources): Always set the object file and the
|
||
switches file names, as the configuration of the language may change
|
||
in an extending project.
|
||
(Process_Naming_Scheme): For sources of projects that are extended, set
|
||
the configuration of the language from the highest extending project
|
||
where the language is declared.
|
||
|
||
2010-06-14 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_res.adb (Resolve_Call): For infinite recursion check, test
|
||
whether the called subprogram is inherited from a containing
|
||
subprogram.
|
||
(Same_Or_Aliased_Subprograms): New function
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (End_Use_Type): Before indicating that an operator is not
|
||
use-visible, check whether it is a primitive for more than one type.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_ch3.adb (Copy_And_Swap): Copy Has_Pragma_Unmodified flag.
|
||
|
||
* sem_ch7.adb (Preserve_Full_Attributes): Preserve
|
||
Has_Pragma_Unmodified flag.
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* g-sttsne-locking.adb, g-sttsne-locking.ads, g-sttsne.ads,
|
||
g-sttsne-vxworks.adb, g-sttsne-dummy.ads: Removed. Mutual exclusion is
|
||
now done in GNAT.Sockets if necessary.
|
||
* gsocket.h, g-socket.adb, g-sothco.ads (GNAT.Sockets.Get_XXX_By_YYY):
|
||
Ensure mutual exclusion for netdb operations if the target platform
|
||
requires it.
|
||
(GNAT.Sockets.Thin_Common): New binding for getXXXbyYYY, treating
|
||
struct hostent as an opaque type to improve portability.
|
||
* s-oscons-tmplt.c, socket.c: For the case of Vxworks, emulate
|
||
gethostbyYYY using proprietary VxWorks API so that a uniform interface
|
||
is available for the Ada side.
|
||
* gcc-interface/Makefile.in: Remove g-sttsne-*
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-14 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (Mapping_File): New function.
|
||
|
||
2010-06-14 Javier Miranda <miranda@adacore.com>
|
||
|
||
* sem_ch3.adb (Derive_Subprograms): Remove over-restrictive assertion.
|
||
|
||
2010-06-14 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* ali.adb: Fix typo.
|
||
* s-auxdec-vms-alpha.adb, scng.ads: Minor reformatting.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb: Make Mark_Context transitive, and apply to subprogram
|
||
instances.
|
||
|
||
* sem_ch8.adb (Find_Expanded_Name): If a candidate compilation unit in
|
||
the context does not have a homonym of the selector, emit default
|
||
error message.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem.adb, sem_ch12.adb, sem_util.adb: Minor reformatting and
|
||
comment addition.
|
||
|
||
2010-06-14 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* lib-xref.ads: Doc updates:
|
||
- Allocate 'Q' for #include entity kind
|
||
- Free 'Z'
|
||
- Allocate 'g' for regular macros
|
||
- Allocate 'G' for function-like macros
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sinfo.ads, sinfo.adb (Withed_Body): New attribute of a with_clause.
|
||
Indicates that there is an instantiation in the current unit that
|
||
loaded the body of the unit denoted by the with_clause.
|
||
* sem_ch12.adb (Mark_Context): When instanting a generic body, check
|
||
whether a with_clause in the current context denotes the unit that
|
||
holds the generic declaration, and mark the with_clause accordingly.
|
||
(Instantiate_Package_Body): call Mark_Context.
|
||
* sem.adb (Process_Bodies_In_Context): Use Withed_Body to determine
|
||
whether a given body should be traversed before the spec of the main
|
||
unit.
|
||
|
||
2010-06-14 Ed Falis <falis@adacore.com>
|
||
|
||
* sysdep.c: Fix 653 build against vThreads headers.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sinfo.ads: Minor reformatting.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Body): Do not check conformance when
|
||
the spec has been generated for a body without spec that carries an
|
||
Inline_Always pragma.
|
||
|
||
2010-06-14 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* lib-xref.ads: Documentation change: allocate 'Z' letter to C/C++
|
||
macro.
|
||
|
||
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* exp_dbug.adb (Debug_Renaming_Declaration): Do not output any debug
|
||
declaration for VMs, as those are useless and might lead to duplicated
|
||
local variable names in the generated code.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* opt.ads, sem.adb, sem_elab.adb: Minor reformatting
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_aggr.adb (Has_Address_Clause): Moved to Exp_Util, and there it
|
||
is renamed as Has_Following_Address_Clause.
|
||
* exp_ch3.adb (Needs_Simple_Initialization): Add Consider_IS argument
|
||
to allow the caller to avoid Initialize_Scalars having an effect.
|
||
(Expand_N_Object_Declaration): Do not do Initialize_Scalars stuff for
|
||
scalars with an address clause specified.
|
||
* exp_ch3.ads (Needs_Simple_Initialization): Add Consider_IS argument
|
||
to allow the caller to avoid Initialize_Scalars having an effect.
|
||
* exp_util.adb (Has_Following_Address_Clause): Moved here from Exp_Aggr
|
||
(where it was called Has_Address_Clause).
|
||
* exp_util.ads (Has_Following_Address_Clause): Moved here from Exp_Aggr
|
||
(where it was called Has_Address_Clause).
|
||
* freeze.adb (Warn_Overlay): Suppress message about overlaying causing
|
||
problems for Initialize_Scalars (since we no longer initialize objects
|
||
with an address clause.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* exp_prag.adb (Expand_Pragma_Check): Set Loc of generated code from
|
||
condition.
|
||
|
||
2010-06-14 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set Debug_Info_Needed
|
||
on the entity of an implicitly generated postcondition procedure.
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* sem_ch7.adb (Preserve_Full_Attributes): Propagate
|
||
Discriminant_Constraint elist from full view to private view.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_res.adb: Minor reformatting.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem.adb: New version of unit traversal.
|
||
|
||
* sem_elab.adb (Check_Internal_Call): Do not place a call appearing
|
||
within a generic unit in the table of delayed calls.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnatcmd.adb, sem_util.adb, exp_ch3.adb: Minor reformatting
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch12.adb (Save_References): If an identifier has been rewritten
|
||
during analysis as an explicit dereference, keep the reference implicit
|
||
in the generic, but preserve the entity if global. This prevents
|
||
malformed generic trees in the presence of some nested generics.
|
||
|
||
2010-06-14 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_ugn.texi: For the GNAT driver, clarify the effect of calling the
|
||
tool with '-files=' option. Also fix some small errors (wrong brackets)
|
||
|
||
2010-06-14 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all
|
||
the ALI files on the command line.
|
||
|
||
* ali.adb (Scan_ALI): Set component Directly_Scanned of the unit(s) to
|
||
the same value as the parameter of the same name.
|
||
* ali.ads (Scan_ALI): New Boolean parameter Directly_Scanned, defaulted
|
||
to False.
|
||
* bindgen.adb (Gen_Versions_Ada): Never emit version symbols for
|
||
Stand-Alone Library interfaces. When binding Stand-Alone Libraries,
|
||
emit version symbols only for the units of the library.
|
||
(Gen_Versions_C): Ditto.
|
||
|
||
2010-06-14 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* sem_ch4.adb: Fix typo.
|
||
|
||
2010-06-14 Vasiliy Fofanov <fofanov@adacore.com>
|
||
|
||
* s-oscons-tmplt.c (IOV_MAX): redefine on Tru64 and VMS since the
|
||
vector IO doesn't work at default value properly.
|
||
|
||
2010-06-14 Doug Rupp <rupp@adacore.com>
|
||
|
||
* s-stoele.adb: Remove unnecessary qualification of To_Address for VMS.
|
||
|
||
2010-06-14 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb (Check_Files): Do not invoke the tool with all the
|
||
sources of the project if a switch -files= is used.
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* exp_attr.adb: Minor reformatting.
|
||
|
||
2010-06-14 Gary Dismukes <dismukes@adacore.com>
|
||
|
||
* gnat_ugn.texi: Minor typo fixes and wording changes.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch4.adb (Analyze_One_Call): If the call has been rewritten from a
|
||
prefixed form, do not re-analyze first actual, which may need an
|
||
implicit dereference.
|
||
* sem_ch6.adb (Analyze_Procedure_Call): If the call is given in
|
||
prefixed notation, the analysis will rewrite the node, and possible
|
||
errors appear in the rewritten name of the node.
|
||
* sem_res.adb: If a call is ambiguous because its first parameter is
|
||
an overloaded call, report list of candidates, to clarify ambiguity of
|
||
enclosing call.
|
||
|
||
2010-06-14 Doug Rupp <rupp@adacore.com>
|
||
|
||
* s-auxdec-vms-alpha.adb: New package body implementing legacy
|
||
VAX instructions with Asm insertions.
|
||
* s-auxdec-vms_64.ads: Inline VAX queue functions
|
||
* s-stoele.adb: Resolve some ambiguities in To_Addresss with s-suxdec
|
||
that show up only on VMS.
|
||
* gcc-interface/Makefile.in: Provide translation for
|
||
s-auxdec-vms-alpha.adb.
|
||
|
||
2010-06-14 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* initialize.c (VxWorks section): Update comments.
|
||
|
||
2010-06-14 Robert Dewar <dewar@adacore.com>
|
||
|
||
* a-convec.adb, sem_prag.adb, checks.adb: Minor reformatting.
|
||
|
||
2010-06-14 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* init.c: Code clean up.
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address): Do
|
||
not insert address clause in table for later validation if type of
|
||
entity is generic, to prevent possible spurious errors.
|
||
|
||
* sem_ch8.adb: Code clean up.
|
||
|
||
2010-06-14 Ben Brosgol <brosgol@adacore.com>
|
||
|
||
* gnat_ugn.texi: Expanded @ovar macro inline to solve problem with
|
||
texi2pdf and texi2html.
|
||
Document how to change scheduling properties on HP-UX.
|
||
|
||
2010-06-14 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* g-socket.ads: Remove misleading comments.
|
||
|
||
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
|
||
|
||
* sem_prag.adb (Check_Duplicated_Export_Name): Remove check for
|
||
CLI_Target as this prevents proper detection of exported names
|
||
duplicates when the exported language is different to CIL.
|
||
(Process_Interface_Name): Add check for CIL convention exports,
|
||
replacing the old one from Check_Duplicated_Export_Name.
|
||
|
||
2010-06-14 Matthew Heaney <heaney@adacore.com>
|
||
|
||
* a-coinve.adb, a-convec.adb (operator "&"): Check both that new length
|
||
and new last satisfy constraints.
|
||
(Delete_Last): prevent overflow for subtraction of index values
|
||
(To_Vector): prevent overflow for addition of index values
|
||
|
||
2010-06-14 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch4.adb (Complete_Object_Operation): After analyzing the
|
||
rewritten call, preserve the resulting type to prevent spurious errors,
|
||
when the call is implicitly dereferenced in the context of an in-out
|
||
actual.
|
||
|
||
* checks.adb (Apply_Discriminant_Check): If the target of the
|
||
assignment is a renaming of a heap object, create constrained type for
|
||
it to apply check.
|
||
|
||
2010-06-14 Pascal Obry <obry@adacore.com>
|
||
|
||
* prj-proc.adb: Fix copy of object directory for extending projects.
|
||
|
||
2010-06-14 Jose Ruiz <ruiz@adacore.com>
|
||
|
||
* init.c (__gnat_alternate_stack): Define this space for PowerPC linux
|
||
(__gnat_install_handler, PowerPC linux): Activate the alternative
|
||
signal stack.
|
||
|
||
2010-06-13 Gerald Pfeifer <gerald@pfeifer.com>
|
||
|
||
* gnat_rm.texi: Move to GFDL version 1.3.
|
||
* gnat-style.texi: Ditto.
|
||
* gnat_ugn.texi: Ditto.
|
||
|
||
2010-06-12 Kai Tietz <kai.tietz@onevision.com>
|
||
|
||
PR ada/43731
|
||
* gcc-interface/Makefile.in: Add rules for multilib x86/x64
|
||
mingw targets.
|
||
|
||
2010-06-11 Alexandre Oliva <aoliva@redhat.com>
|
||
|
||
* gcc-interface/utils.c (update_pointer_to): Initialize last.
|
||
|
||
2010-06-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/ada-tree.h: Fix formatting nits.
|
||
|
||
2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
|
||
|
||
* gcc-interface/utils.c (init_gnat_to_gnu): Use typed GC
|
||
allocation.
|
||
(init_dummy_type): Likewise.
|
||
(gnat_pushlevel): Likewise.
|
||
|
||
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
|
||
(Subprogram_Body_to_gnu): Likewise.
|
||
(Compilation_Unit_to_gnu): Likewise.
|
||
(start_stmt_group): Likewise.
|
||
(extract_encoding): Likewise.
|
||
(decode_name): Likewise.
|
||
|
||
* gcc-interface/misc.c (gnat_printable_name): Likewise.
|
||
|
||
* gcc-interface/decl.c (annotate_value): Likewise.
|
||
|
||
* gcc-interface/ada-tree.h (struct lang_type): Add variable_size
|
||
GTY option.
|
||
(struct lang_decl): Likewise.
|
||
(SET_TYPE_LANG_SPECIFIC): Use typed GC allocation.
|
||
(SET_DECL_LANG_SPECIFIC): Likewise.
|
||
|
||
2010-06-04 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gnatlink.adb (gnatlink): Remove support for -fsjlj switch.
|
||
* gcc-interface/lang-specs.h: Likewise.
|
||
|
||
2010-06-03 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
PR c++/44294
|
||
* gcc-interface/decl.c (MAX_FIXED_MODE_SIZE): Removed.
|
||
|
||
2010-06-01 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnat_ugn.texi: Improve doc on -fdump-ada-spec, mention limitations.
|
||
|
||
2010-05-30 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Task_Type>: Reuse the
|
||
TYPE_DECL of the equivalent type instead of building a new one.
|
||
|
||
2010-05-30 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust warning message.
|
||
Fix nits in comments.
|
||
* gcc-interface/misc.c (gnat_init_gcc_eh): Likewise.
|
||
* gcc-interface/trans.c (gigi): Likewise.
|
||
(Attribute_to_gnu): Likewise.
|
||
(Case_Statement_to_gnu): Likewise.
|
||
(gnat_to_gnu): Adjust warning message.
|
||
* gcc-interface/utils.c (create_var_decl_1): Fix nits in comments.
|
||
(build_vms_descriptor32): Likewise.
|
||
|
||
2010-05-27 Steven Bosscher <steven@gcc.gnu.org>
|
||
|
||
* gcc-interface/decl.c: Pretend to be a backend file by undefining
|
||
IN_GCC_FRONTEND (still need rtl.h here).
|
||
|
||
2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
|
||
|
||
* gcc-interface/trans.c: Do not include rtl.h, insclude libfuncs.h.
|
||
(gigi): Adjust call to set_stack_check_libfunc.
|
||
|
||
2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
|
||
|
||
* gcc-interface/utils.c: Do not include rtl.h.
|
||
|
||
2010-05-25 Steven Bosscher <steven@gcc.gnu.org>
|
||
|
||
* gcc-interface/utils.c: Do not include function.h, pointer-set.h,
|
||
and gimple.h. Explain why rtl.h has to be included.
|
||
(handle_vector_size_attribute): Call reconstruct_complex_type directly.
|
||
* gcc-interface/targtyps.c: Do not include tm_p.h
|
||
* gcc-interface/utils2.c: Do not include flags.h.
|
||
* gcc-interface/trans.c: Do not include expr.h. Include rtl.h instead,
|
||
and explain why it has to be included.
|
||
* gcc-interface/misc.c: Do not include expr.h, libfuncs.h, cgraph.h,
|
||
and optabs.h.
|
||
Include function.h and explain why. Explain why except.h is included.
|
||
(enumerate_modes): Remove unused function.
|
||
* gcc-interface/gigi.h (enumerate_modes): Remove prototype.
|
||
* gcc-interface/Make-lang.in: Update dependencies.
|
||
|
||
2010-05-25 Joseph Myers <joseph@codesourcery.com>
|
||
|
||
* gcc-interface/misc.c (internal_error_function): Add context
|
||
parameter. Use it to access show_column flag and instead of using
|
||
global_dc. Call warn_if_plugins.
|
||
* gcc-interface/Make-lang.in (ada/misc.o): Update dependencies.
|
||
|
||
2010-05-19 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/misc.c (LANG_HOOKS_DEEP_UNSHARING): Redefine.
|
||
* gcc-interface/trans.c (unshare_save_expr): Delete.
|
||
(gigi): Do not unshare trees under SAVE_EXPRs here.
|
||
|
||
2010-05-18 Nathan Froyd <froydnj@codesourcery.com>
|
||
|
||
* gcc-interface/trans.c (call_to_gnu): Use build_call_vec instead of
|
||
build_call_list.
|
||
* gcc-interface/utils.c (build_function_stub): Likewise.
|
||
|
||
2010-05-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
|
||
|
||
* gcc-interface/misc.c (gnat_handle_option): Remove special logic
|
||
for Wuninitialized without -O.
|
||
|
||
2010-05-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (enum standard_datatypes): Add new value
|
||
ADT_exception_data_name_id.
|
||
(exception_data_name_id): New define.
|
||
* gcc-interface/trans.c (gigi): Initialize it.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Use the standard
|
||
exception type for standard exception definitions. Do not make them
|
||
volatile.
|
||
<E_Record_Type>: Equate fields of types associated with an exception
|
||
definition to those of the standard exception type.
|
||
|
||
2010-05-13 Andreas Schwab <schwab@linux-m68k.org>
|
||
|
||
* tracebak.c (__gnat_backtrace): Mark top_stack with ATTRIBUTE_UNUSED.
|
||
|
||
2010-05-12 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Tidy up
|
||
code, improve comments and fix formatting nits.
|
||
|
||
2010-05-12 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (update_pointer_to): Return early if the old
|
||
pointer already points to the new type. Chain the old pointer and its
|
||
variants at the end of new pointer's chain after updating them.
|
||
|
||
2010-05-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables
|
||
built for interfaces.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Use
|
||
imported_p instead of Is_Imported when considering constants.
|
||
Do not promote alignment of exported objects.
|
||
<E_Record_Subtype>: Strip all suffixes for dispatch table entities.
|
||
|
||
2010-05-08 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Make imported
|
||
constants really constant.
|
||
<E_Record_Subtype>: Strip the suffix for dispatch table entities.
|
||
|
||
2010-05-08 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (make_aligning_type): Declare the type.
|
||
|
||
2010-05-08 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Create variables for size
|
||
expressions of variant part of record types declared at library level.
|
||
|
||
2010-05-08 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (create_field_decl): Move PACKED parameter.
|
||
* gcc-interface/utils.c (create_field_decl): Move PACKED parameter.
|
||
(rest_of_record_type_compilation): Adjust call to create_field_decl.
|
||
(make_descriptor_field): Likewise and pass correctly typed constants.
|
||
(build_unc_object_type): Likewise.
|
||
(unchecked_convert): Likewise.
|
||
* gcc-interface/decl.c (elaborate_expression_2): New static function.
|
||
(gnat_to_gnu_entity): Use it to make alignment factors explicit.
|
||
Adjust call to create_field_decl.
|
||
(make_aligning_type): Likewise.
|
||
(make_packable_type): Likewise.
|
||
(maybe_pad_type): Likewise.
|
||
(gnat_to_gnu_field): Likewise.
|
||
(components_to_record): Likewise.
|
||
(create_field_decl_from): Likewise.
|
||
(create_variant_part_from): Remove superfluous test.
|
||
* gcc-interface/trans.c (gigi): Adjust call to create_field_decl.
|
||
|
||
2010-05-08 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (build_unc_object_type): Add DEBUG_INFO_P param.
|
||
(build_unc_object_type_from_ptr): Likewise.
|
||
* gcc-interface/utils.c (build_unc_object_type): Add DEBUG_INFO_P param
|
||
and pass it to create_type_decl. Declare the type. Simplify.
|
||
(build_unc_object_type_from_ptr): Add DEBUG_INFO_P parameter and pass
|
||
it to build_unc_object_type.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust to above change.
|
||
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
|
||
(gnat_to_gnu): Likewise.
|
||
* gcc-interface/utils2.c (build_allocator): Likewise.
|
||
|
||
2010-05-07 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR 40989
|
||
* gcc-interface/misc.c (gnat_handle_option): Fix long line.
|
||
|
||
2010-05-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
* gcc-interface/Makefile.in: Removed mips-sgi-irix5* support.
|
||
|
||
2010-05-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
|
||
|
||
PR 40989
|
||
* gcc-interface/misc.c (gnat_handle_option): Add argument kind.
|
||
|
||
2010-05-02 Giuseppe Scrivano <gscrivano@gnu.org>
|
||
|
||
* gnathtml.pl: Use 755 as mask for new directories.
|
||
|
||
2010-04-28 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gnat_gimplify_expr) <ADDR_EXPR>: Uniquize
|
||
constant constructors before taking their address.
|
||
|
||
2010-04-25 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_dbug.ads: Fix outdated description. Mention link between XVS
|
||
and XVZ objects.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Set
|
||
XVZ variable as unit size of XVS type.
|
||
(maybe_pad_type): Likewise.
|
||
|
||
2010-04-25 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Do not
|
||
use memmove if the array type is bit-packed.
|
||
|
||
2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/misc.c (gnat_init): Remove second argument in call to
|
||
build_common_tree_nodes.
|
||
|
||
2010-04-18 Ozkan Sezer <sezeroz@gmail.com>
|
||
|
||
* gsocket.h: Make sure that winsock2.h is included before windows.h.
|
||
|
||
2010-04-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils2.c (build_unary_op) <ATTR_ADDR_EXPR>: Do not
|
||
issue warning.
|
||
|
||
2010-04-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* uintp.h (UI_Lt): Declare.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do the size
|
||
computation in sizetype.
|
||
<E_Array_Subtype>: Use unified handling for all index types. Do not
|
||
generate MAX_EXPR-based expressions, only COND_EXPR-based ones. Add
|
||
bypass for PATs.
|
||
(annotate_value): Change test for negative values.
|
||
(validate_size): Apply test for negative values on GNAT nodes.
|
||
(set_rm_size): Likewise.
|
||
* gcc-interface/misc.c (gnat_init): Set unsigned types for sizetypes.
|
||
* gcc-interface/utils.c (rest_of_record_type_compilation): Change test
|
||
for negative values.
|
||
(max_size) <MINUS_EXPR>: Do not reassociate a COND_EXPR on the LHS.
|
||
(builtin_type_for_size): Adjust definition of signed_size_type_node.
|
||
* gcc-interface/utils2.c (compare_arrays): Optimize comparison of
|
||
lengths against zero.
|
||
|
||
2010-04-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* back-end.adb (Call_Back_End): Pass Standard_Character to gigi.
|
||
* gcc-interface/gigi.h (gigi): Add standard_character parameter.
|
||
(CHAR_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE,
|
||
LONG_LONG_TYPE_SIZE, FLOAT_TYPE_SIZE, DOUBLE_TYPE_SIZE,
|
||
LONG_DOUBLE_TYPE_SIZE, SIZE_TYPE): Delete.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Call
|
||
rm_size.
|
||
* gcc-interface/misc.c (gnat_init): Set signedness of char as per
|
||
flag_signed_char. Tag sizetype with "size_type" moniker.
|
||
* gcc-interface/trans.c (gigi): Add standard_character parameter.
|
||
Remove useless built-in types. Equate unsigned_char_type_node to
|
||
Standard.Character. Use it instead of char_type_node throughout.
|
||
(Attribute_to_gnu): Likewise.
|
||
(gnat_to_gnu): Likewise.
|
||
* gcc-interface/utils2.c (build_call_raise): Likewise.
|
||
|
||
2010-04-17 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (enum standard_datatypes): Add new values
|
||
ADT_sbitsize_one_node and ADT_sbitsize_unit_node.
|
||
(sbitsize_one_node): New macro.
|
||
(sbitsize_unit_node): Likewise.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Fix
|
||
latent bug in the computation of subrange_p. Fold wider_p predicate.
|
||
(cannot_be_superflat_p): Use an explicitly signed 64-bit type to do
|
||
the final comparison.
|
||
(make_aligning_type): Build real negation and use sizetype throughout
|
||
the offset computation.
|
||
(maybe_pad_type): Do not issue the warning when the new size expression
|
||
is too complex.
|
||
(annotate_value) <INTEGER_CST>: Simplify code handling negative values.
|
||
* gcc-interface/misc.c (gnat_init): Initialize sbitsize_one_node and
|
||
sbitsize_unit_node.
|
||
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Pool_Address>: Fold
|
||
double negation.
|
||
(gnat_to_gnu) <N_Free_Statement>: Likewise.
|
||
* gcc-interface/utils.c (convert): Use sbitsize_unit_node.
|
||
* gcc-interface/utils2.c (compare_arrays): Compute real lengths and use
|
||
constants in sizetype. Remove dead code and tweak comments. Generate
|
||
equality instead of inequality comparisons for zero length tests.
|
||
|
||
2010-04-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (gnat_init_decl_processing): Delete.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Constify a few variables.
|
||
<object>: Do not create the fake PARM_DECL if no debug info is needed.
|
||
Do not create the corresponding VAR_DECL of a CONST_DECL for debugging
|
||
purposes if no debug info is needed.
|
||
Fix formatting. Reorder and add comments.
|
||
* gcc-interface/trans.c (gnat_to_gnu) <N_Attribute_Reference>: Constify
|
||
variable and remove obsolete comment.
|
||
* gcc-interface/utils.c (convert_vms_descriptor64): Tweak comment.
|
||
(convert_vms_descriptor32): Likewise.
|
||
(convert): Remove dead code.
|
||
<UNCONSTRAINED_ARRAY_REF>: Pass the field instead of its name to build
|
||
the reference to the P_ARRAY pointer.
|
||
<POINTER_TYPE>: Likewise.
|
||
(maybe_unconstrained_array) <UNCONSTRAINED_ARRAY_TYPE>: Likewise.
|
||
(gnat_init_decl_processing): Delete, move contents to...
|
||
* gcc-interface/misc.c (gnat_init): ...here.
|
||
|
||
2010-04-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (unchecked_conversion_nop): Handle function
|
||
calls. Return true for conversion from a record subtype to its type.
|
||
|
||
2010-04-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Use boolean_type_node in
|
||
lieu of integer_type_node for boolean operations.
|
||
(choices_to_gnu): Likewise.
|
||
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
|
||
(Loop_Statement_to_gnu): Likewise.
|
||
(establish_gnat_vms_condition_handler): Likewise.
|
||
(Exception_Handler_to_gnu_sjlj): Likewise.
|
||
(gnat_to_gnu): Likewise.
|
||
(build_unary_op_trapv): Likewise.
|
||
(build_binary_op_trapv): Likewise.
|
||
(emit_range_check): Likewise.
|
||
(emit_index_check): Likewise.
|
||
(convert_with_check): Likewise.
|
||
* gcc-interface/utils.c (convert_vms_descriptor64): Likewise.
|
||
(convert_vms_descriptor32): Likewise.
|
||
(convert_vms_descriptor): Likewise.
|
||
* gcc-interface/utils2.c (nonbinary_modular_operation): Likewise.
|
||
(compare_arrays): Use boolean instead of integer constants.
|
||
(build_binary_op) <TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR, TRUTH_AND_EXPR,
|
||
TRUTH_OR_EXPR, TRUTH_XOR_EXPR>: New case. Check that the result type
|
||
is a boolean type.
|
||
<GE_EXPR, LE_EXPR, GT_EXPR, LT_EXPR>: Remove obsolete assertion.
|
||
<EQ_EXPR, NE_EXPR>: Check that the result type is a boolean type.
|
||
<PREINC/PREDECREMENT_EXPR, POSTINC/POSTDECREMENT_EXPR>: Delete.
|
||
<TRUTH_NOT_EXPR>: Check that the result type is a boolean type.
|
||
(build_unary_op): Use boolean_type_node in lieu of integer_type_node
|
||
for boolean operations.
|
||
(fill_vms_descriptor): Likewise. Fix formatting nits.
|
||
|
||
2010-04-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/ada-tree.def (LOOP_STMT): Change to 4-operand nodes.
|
||
* gcc-interface/ada-tree.h (LOOP_STMT_TOP_COND, LOOP_STMT_BOT_COND):
|
||
Merge into...
|
||
(LOOP_STMT_COND): ...this.
|
||
(LOOP_STMT_BOTTOM_COND_P): New flag.
|
||
(LOOP_STMT_TOP_UPDATE_P): Likewise.
|
||
* gcc-interface/trans.c (can_equal_min_or_max_val_p): New function.
|
||
(can_equal_min_val_p): New static inline function.
|
||
(can_equal_max_val_p): Likewise.
|
||
(Loop_Statement_to_gnu): Use build4 in lieu of build5 and adjust to
|
||
new LOOP_STMT semantics. Use two different strategies depending on
|
||
whether optimization is enabled to translate the loop.
|
||
(gnat_gimplify_stmt) <LOOP_STMT>: Adjust to new LOOP_STMT semantics.
|
||
|
||
2010-04-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* uintp.adb (UI_From_Dint): Remove useless code.
|
||
(UI_From_Int): Likewise.
|
||
* uintp.h: Reorder declarations.
|
||
(UI_From_gnu): Declare.
|
||
(UI_Base): Likewise.
|
||
(Vector_Template): Likewise.
|
||
(Vector_To_Uint): Likewise.
|
||
(Uint_0): Remove.
|
||
(Uint_1): Likewise.
|
||
* gcc-interface/gigi.h: Tweak comments.
|
||
* gcc-interface/cuintp.c (UI_From_gnu): New global function.
|
||
* gcc-interface/decl.c (maybe_pad_type): Do not warn if either size
|
||
overflows.
|
||
(annotate_value) <INTEGER_CST>: Call UI_From_gnu.
|
||
* gcc-interface/trans.c (post_error_ne_num): Call post_error_ne.
|
||
(post_error_ne_tree): Call UI_From_gnu and post_error_ne.
|
||
* gcc-interface/utils.c (max_size) <tcc_binary>: Do not special-case
|
||
TYPE_MAX_VALUE.
|
||
|
||
2010-04-16 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Just copy
|
||
TYPE_NAME.
|
||
* gcc-interface/trans.c (smaller_packable_type_p): Rename into...
|
||
(smaller_form_type_p): ...this. Change parameter and variable names.
|
||
(call_to_gnu): Use the nominal type of the parameter to create the
|
||
temporary if it's a smaller form of the actual type.
|
||
(addressable_p): Return false if the actual type is integral and its
|
||
size is greater than that of the expected type.
|
||
|
||
2010-04-15 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/cuintp.c (UI_To_gnu): Fix long line.
|
||
* gcc-interface/gigi.h (MARK_VISITED): Skip objects of constant class.
|
||
(process_attributes): Delete.
|
||
(post_error_ne_num): Change parameter name.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not force debug info
|
||
with -g3. Remove a couple of obsolete lines. Minor tweaks.
|
||
If type annotating mode, operate on trees to compute the adjustment to
|
||
the sizes of tagged types. Fix long line.
|
||
(cannot_be_superflat_p): Tweak head comment.
|
||
(annotate_value): Fold local constant.
|
||
(set_rm_size): Fix long line.
|
||
* gcc-interface/trans.c (Identifier_to_gnu): Rework comments.
|
||
(Attribute_to_gnu): Fix long line.
|
||
<Attr_Size>: Remove useless assertion.
|
||
Reorder statements. Use size_binop routine.
|
||
(Loop_Statement_to_gnu): Use build5 in lieu of build_nt.
|
||
Create local variables for the label and the test. Tweak comments.
|
||
(Subprogram_Body_to_gnu): Reset cfun to NULL.
|
||
(Compilation_Unit_to_gnu): Use the Sloc of the Unit node.
|
||
(process_inlined_subprograms): Integrate into...
|
||
(Compilation_Unit_to_gnu): ...this.
|
||
(gnat_to_gnu): Fix long line.
|
||
(post_error_ne_num): Change parameter name.
|
||
* gcc-interface/utils.c (process_attributes): Static-ify.
|
||
<ATTR_MACHINE_ATTRIBUTE>: Set input_location before proceeding.
|
||
(create_type_decl): Add comment.
|
||
(create_var_decl_1): Process the attributes after adding the VAR_DECL
|
||
to the current binding level.
|
||
(create_subprog_decl): Likewise for the FUNCTION_DECL.
|
||
(end_subprog_body): Do not reset cfun to NULL.
|
||
(build_vms_descriptor32): Fix long line.
|
||
(build_vms_descriptor): Likewise.
|
||
(handle_nonnull_attribute): Likewise.
|
||
(convert_vms_descriptor64): Likewise.
|
||
* gcc-interface/utils2.c (fill_vms_descriptor): Fix long line.
|
||
(gnat_protect_expr): Fix thinko.
|
||
|
||
2010-04-15 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gigi): Set DECL_IGNORED_P on EH functions.
|
||
(gnat_to_gnu) <N_Op_Eq>: Restore the value of input_location
|
||
before translating the top-level node.
|
||
(lvalue_required_p) <N_Function_Call>: Return 1 if !constant.
|
||
<N_Object_Declaration>: Likewise.
|
||
<N_Assignment_Statement>: Likewise.
|
||
<N_Unchecked_Type_Conversion>: Likewise.
|
||
(call_to_gnu): Remove kludge.
|
||
(gnat_to_gnu) <N_Return_Statement>: When not optimizing, force labels
|
||
associated with user returns to be preserved.
|
||
(gnat_to_gnu): Add special code to deal with boolean rvalues.
|
||
* gcc-interface/utils2.c (compare_arrays): Set input_location on all
|
||
comparisons.
|
||
(build_unary_op) <ADDR_EXPR>: Call build_fold_addr_expr.
|
||
<INDIRECT_REF>: Call build_fold_indirect_ref.
|
||
|
||
2010-04-15 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||
|
||
* g-socket.adb: A target can have multiple missing errno's. This
|
||
will result in multiple errno's being defined as -1. Because of this
|
||
we can not use a case but must use a series of if's to avoid
|
||
a duplicate case error in GNAT.Sockets.Resolve_Error.
|
||
|
||
2010-04-15 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (call_to_gnu): Open a nesting level if this is
|
||
a statement. Otherwise, if at top-level, push the processing of the
|
||
elaboration routine. In the misaligned case, issue the error messages
|
||
again on entry and create the temporary explicitly. Do not issue them
|
||
for CONSTRUCTORs.
|
||
For a function call, emit the range check if necessary.
|
||
In the copy-in copy-out case, create the temporary for the return
|
||
value explicitly.
|
||
Do not unnecessarily convert by-ref parameters to the formal's type.
|
||
Remove obsolete guards in conditions.
|
||
(gnat_to_gnu) <N_Assignment_Statement>: For a function call, pass the
|
||
target to call_to_gnu in all cases.
|
||
(gnat_gimplify_expr) <ADDR_EXPR>: Remove handling of SAVE_EXPR.
|
||
(addressable_p) <CONSTRUCTOR>: Return false if not static.
|
||
<COMPOUND_EXPR>: New case.
|
||
* gcc-interface/utils2.c (build_unary_op) <ADDR_EXPR>: Fold a compound
|
||
expression if it has unconstrained array type.
|
||
(gnat_mark_addressable) <COMPOUND_EXPR>: New case.
|
||
(gnat_stabilize_reference) <COMPOUND_EXPR>: Stabilize operands on an
|
||
individual basis.
|
||
|
||
2010-04-15 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (gigi): Do not start statement group.
|
||
(Compilation_Unit_to_gnu): Set current_function_decl to NULL.
|
||
Start statement group and push binding level here...
|
||
(gnat_to_gnu) <N_Compilation_Unit>: ...and not here.
|
||
Do not push fake contexts at top level. Remove redundant code.
|
||
(call_to_gnu): Rename a local variable and constify another.
|
||
* gcc-interface/utils.c (gnat_pushlevel): Fix formatting nits.
|
||
(set_current_block_context): Set it as the group's block.
|
||
(gnat_init_decl_processing): Delete unrelated init code.
|
||
(end_subprog_body): Use NULL_TREE.
|
||
|
||
2010-04-15 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (call_to_gnu): Do not unnecessarily force
|
||
side-effects of actual parameters before the call.
|
||
|
||
2010-04-15 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (validate_size): Reorder, remove obsolete test
|
||
and warning.
|
||
(set_rm_size): Reorder and remove obsolete test.
|
||
|
||
2010-04-14 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h: Reorder declarations and tweak comments.
|
||
(gigi): Adjust ATTRIBUTE_UNUSED markers.
|
||
* gcc-interface/gadaint.h: New file.
|
||
* gcc-interface/trans.c: Include it in lieu of adaint.h. Reorder.
|
||
(__gnat_to_canonical_file_spec): Remove declaration.
|
||
(number_names): Delete.
|
||
(number_files): Likewise.
|
||
(gigi): Adjust.
|
||
* gcc-interface/Make-lang.in (ada/trans.o): Adjust dependencies to
|
||
above change.
|
||
|
||
2010-04-14 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Class_Wide_Type>: Fix
|
||
comment.
|
||
* gcc-interface/trans.c (process_freeze_entity): Use local copy of
|
||
Ekind. Return early for class-wide types. Do not compute initializer
|
||
unless necessary. Reuse the tree for an associated class-wide type
|
||
only if processing its root type.
|
||
|
||
2010-04-13 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||
|
||
* gsocket.h: Run-time can no longer be built without network
|
||
OS headers available. Changing RTEMS GNAT build procedure to
|
||
reflect this and letting run-time build use network .h files.
|
||
|
||
2010-04-13 Duncan Sands <baldrick@free.fr>
|
||
|
||
* gcc-interface/misc.c (gnat_eh_type_covers): Remove.
|
||
* gcc-interface/trans.c (Exception_Handler_to_gnu_zcx): Update comment.
|
||
|
||
2010-04-13 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (standard_datatypes): Add ADT_parent_name_id.
|
||
(parent_name_id): New macro.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Use it.
|
||
* gcc-interface/trans.c (gigi): Initialize it.
|
||
(lvalue_required_p) <N_Type_Conversion>: New case.
|
||
<N_Qualified_Expression>: Likewise.
|
||
<N_Allocator>: Likewise.
|
||
* gcc-interface/utils.c (convert): Try to properly upcast tagged types.
|
||
|
||
2010-04-13 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/ada-tree.h (TYPE_BY_REFERENCE_P): Delete.
|
||
(DECL_CONST_ADDRESS_P): New macro.
|
||
(SET_DECL_ORIGINAL_FIELD_TO_FIELD): Likewise.
|
||
(SAME_FIELD_P): Likewise.
|
||
* gcc-interface/decl.c (constructor_address_p): New static function.
|
||
(gnat_to_gnu_entity) <object>: Set DECL_CONST_ADDRESS_P according to
|
||
the return value of above function.
|
||
(gnat_to_gnu_entity) <E_Record_Type>: Force BLKmode for all types
|
||
passed by reference.
|
||
<E_Record_Subtype>: Likewise.
|
||
Set TREE_ADDRESSABLE on the type if it passed by reference.
|
||
(make_packable_type): Use SET_DECL_ORIGINAL_FIELD_TO_FIELD.
|
||
(create_field_decl_from): Likewise.
|
||
(substitute_in_type): Likewise.
|
||
(purpose_member_field): Use SAME_FIELD_P.
|
||
* gcc-interface/misc.c (must_pass_by_ref): Test TREE_ADDRESSABLE.
|
||
* gcc-interface/trans.c (lvalue_required_p): Add ADDRESS_OF_CONSTANT
|
||
parameter and adjust recursive calls.
|
||
<N_Explicit_Dereference>: New case.
|
||
<N_Object_Declaration>: Return 1 if the object is of a class-wide type.
|
||
Adjust calls to lvalue_required_p. Do not return the initializer of a
|
||
DECL_CONST_ADDRESS_P constant if an lvalue is required for it.
|
||
(call_to_gnu): Delay issuing error message for a misaligned actual and
|
||
avoid the associated back-end assertion. Test TREE_ADDRESSABLE.
|
||
(gnat_gimplify_expr) <ADDR_EXPR>: Handle non-static constructors.
|
||
* gcc-interface/utils.c (make_dummy_type): Set TREE_ADDRESSABLE if the
|
||
type is passed by reference.
|
||
(convert) <CONSTRUCTOR>: Convert in-place in more cases.
|
||
* gcc-interface/utils2.c (build_cond_expr): Drop TYPE_BY_REFERENCE_P.
|
||
(build_simple_component_ref): Use SAME_FIELD_P.
|
||
|
||
2010-04-12 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (Identifier_to_gnu): Use boolean variable.
|
||
(call_to_gnu): Test gigi's flag TYPE_BY_REFERENCE_P instead of calling
|
||
front-end's predicate Is_By_Reference_Type. Use consistent order and
|
||
remove ??? comment. Use original conversion in all cases, if any.
|
||
* gcc-interface/utils.c (make_dummy_type): Minor tweak.
|
||
(convert): Use local copy in more cases.
|
||
<INDIRECT_REF>: Remove deactivated code.
|
||
(unchecked_convert): Use a couple of local copies.
|
||
|
||
2010-04-11 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (lvalue_required_for_attribute_p): New static
|
||
function.
|
||
(lvalue_required_p) <N_Attribute_Reference>: Call it.
|
||
(gnat_to_gnu) <N_Selected_Component>: Prevent build_component_ref from
|
||
folding the result only if lvalue_required_for_attribute_p is true.
|
||
* gcc-interface/utils.c (maybe_unconstrained_array): Pass correctly
|
||
typed constant to build_component_ref.
|
||
(unchecked_convert): Likewise.
|
||
* gcc-interface/utils2.c (maybe_wrap_malloc): Likewise.
|
||
(build_allocator): Likewise.
|
||
|
||
2010-04-11 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils2.c (build_cond_expr): Take the address and
|
||
dereference if the result type is passed by reference.
|
||
|
||
2010-04-11 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (Case_Statement_to_gnu): Bool-ify variable.
|
||
(gnat_to_gnu) <N_Null_Statement>: When not optimizing, generate a
|
||
goto to the next statement.
|
||
|
||
2010-04-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (maybe_variable): Delete.
|
||
(protect_multiple_eval): Likewise.
|
||
(maybe_stabilize_reference): Likewise.
|
||
(gnat_save_expr): Declare.
|
||
(gnat_protect_expr): Likewise.
|
||
(gnat_stabilize_reference): Likewise.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Use
|
||
gnat_stabilize_reference.
|
||
(maybe_variable): Delete.
|
||
(elaborate_expression_1): Use gnat_save_expr.
|
||
* gcc-interface/trans.c (Attribute_to_gnu): Use gnat_protect_expr.
|
||
(call_to_gnu): Pass NULL to gnat_stabilize_reference.
|
||
(gnat_to_gnu) <N_Object_Declaration>: Use gnat_save_expr.
|
||
<N_Slice>: Use gnat_protect_exp.
|
||
<N_Selected_Component>: Pass NULL to gnat_stabilize_reference.
|
||
<N_In>: Use gnat_protect_expr.
|
||
Pass NULL to gnat_stabilize_reference.
|
||
(build_unary_op_trapv): Use gnat_protect_expr.
|
||
(build_binary_op_trapv): Likewise.
|
||
(emit_range_check): Likewise.
|
||
(emit_index_check): Likewise.
|
||
(convert_with_check): Likewise.
|
||
(protect_multiple_eval): Move to utils2.c file.
|
||
(maybe_stabilize_reference): Merge into...
|
||
(gnat_stabilize_reference): ...this. Move to utils2.c file.
|
||
(gnat_stabilize_reference_1): Likewise.
|
||
* gcc-interface/utils.c (convert_to_fat_pointer): Use gnat_protect_expr
|
||
instead of protect_multiple_eval.
|
||
* gcc-interface/utils2.c (compare_arrays): Likewise.
|
||
(nonbinary_modular_operation): Likewise.
|
||
(maybe_wrap_malloc): Likewise.
|
||
(build_allocator): Likewise.
|
||
(gnat_save_expr): New function.
|
||
(gnat_protect_expr): Rename from protect_multiple_eval. Early return
|
||
in common cases. Propagate TREE_READONLY onto dereferences.
|
||
(gnat_stabilize_reference_1): Move from trans.c file.
|
||
(gnat_stabilize_reference): Likewise.
|
||
|
||
2010-04-09 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/gigi.h (gnat_mark_addressable): Rename parameter.
|
||
* gcc-interface/decl.c (maybe_variable): Do not set TREE_STATIC on _REF
|
||
node. Use the type of the operand to set TREE_READONLY.
|
||
* gcc-interface/trans.c (Identifier_to_gnu): Do not set TREE_STATIC on
|
||
_REF node. Do not overwrite TREE_READONLY.
|
||
(call_to_gnu): Rename local variable and fix various nits. In the
|
||
copy-in/copy-out case, build the SAVE_EXPR manually.
|
||
(convert_with_check): Call protect_multiple_eval in lieu of save_expr
|
||
and fold the computations.
|
||
(protect_multiple_eval): Always save entire fat pointers.
|
||
(maybe_stabilize_reference): Minor tweaks.
|
||
(gnat_stabilize_reference_1): Likewise. Do not deal with tcc_constant,
|
||
tcc_type and tcc_statement.
|
||
* gcc-interface/utils.c (convert_to_fat_pointer): Call
|
||
protect_multiple_eval in lieu of save_expr.
|
||
(convert): Minor tweaks.
|
||
(maybe_unconstrained_array): Do not set TREE_STATIC on _REF node.
|
||
(builtin_type_for_size): Call gnat_type_for_size directly.
|
||
* gcc-interface/utils2.c (contains_save_expr_p): Delete.
|
||
(contains_null_expr): Likewise
|
||
(gnat_build_constructor): Do not call it.
|
||
(compare_arrays): Deal with all side-effects, use protect_multiple_eval
|
||
instead of gnat_stabilize_reference to protect the operands.
|
||
(nonbinary_modular_operation): Call protect_multiple_eval in lieu of
|
||
save_expr.
|
||
(maybe_wrap_malloc): Likewise.
|
||
(build_allocator): Likewise.
|
||
(build_unary_op) <INDIRECT_REF>: Do not set TREE_STATIC on _REF node.
|
||
(gnat_mark_addressable): Rename parameter.
|
||
|
||
2010-04-08 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/ada-tree.h (TYPE_RETURNS_UNCONSTRAINED_P): Rename into.
|
||
(TYPE_RETURN_UNCONSTRAINED_P): ...this.
|
||
(TYPE_RETURNS_BY_REF_P): Rename into.
|
||
(TYPE_RETURN_BY_DIRECT_REF_P): ...this.
|
||
(TYPE_RETURNS_BY_TARGET_PTR_P): Delete.
|
||
* gcc-interface/gigi.h (create_subprog_type): Adjust parameter names.
|
||
(build_return_expr): Likewise.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>:
|
||
Rename local variables. If the return Mechanism is By_Reference, pass
|
||
return_by_invisible_ref_p to create_subprog_type instead of toggling
|
||
TREE_ADDRESSABLE. Test return_by_invisible_ref_p in order to annotate
|
||
the mechanism. Use regular return for contrained types with non-static
|
||
size and return by invisible reference for unconstrained return types
|
||
with default discriminants. Update comment.
|
||
* gcc-interface/trans.c (Subprogram_Body_to_gnu): If the function
|
||
returns by invisible reference, turn the RESULT_DECL into a pointer.
|
||
Do not handle DECL_BY_REF_P in the CICO case here.
|
||
(call_to_gnu): Remove code handling return by target pointer. For a
|
||
function call, if the return type has non-constant size, generate the
|
||
assignment with an INIT_EXPR.
|
||
(gnat_to_gnu) <N_Return_Statement>: Remove dead code in the CICO case.
|
||
If the function returns by invisible reference, build the copy return
|
||
operation manually.
|
||
(add_decl_expr): Initialize the variable with an INIT_EXPR.
|
||
* gcc-interface/utils.c (create_subprog_type): Adjust parameter names.
|
||
Adjust for renaming of macros. Copy the node only when necessary.
|
||
(create_subprog_decl): Do not toggle TREE_ADDRESSABLE on the return
|
||
type, only change DECL_BY_REFERENCE on the RETURN_DECL.
|
||
(convert_from_reference): Delete.
|
||
(is_byref_result): Likewise.
|
||
(gnat_genericize_r): Likewise.
|
||
(gnat_genericize): Likewise.
|
||
(end_subprog_body): Do not call gnat_genericize.
|
||
* gcc-interface/utils2.c (build_binary_op) <INIT_EXPR>: New case.
|
||
(build_return_expr): Adjust parameter names, logic and comment.
|
||
|
||
2010-04-07 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* exp_pakd.adb (Create_Packed_Array_Type): Always use a modular type
|
||
if the size is small enough. Propagate the alignment if there is an
|
||
alignment clause on the original array type.
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
|
||
Deal with under-aligned packed array types. Copy the size onto the
|
||
justified modular type and don't lay it out again. Likewise for the
|
||
padding type built for other under-aligned subtypes.
|
||
* gcc-interface/utils.c (finish_record_type): Do not set a default mode
|
||
on the type.
|
||
|
||
2010-04-07 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set default
|
||
alignment on the RETURN type built for the Copy-In Copy-Out mechanism.
|
||
|
||
2010-04-07 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/trans.c (call_to_gnu): In the return-by-target-ptr case
|
||
do not set the result type if there is a specified target and do not
|
||
convert the result in any cases.
|
||
(protect_multiple_eval): Make direct SAVE_EXPR for CALL_EXPR.
|
||
(maybe_stabilize_reference) <COMPOUND_EXPR>: Merge with CALL_EXPR.
|
||
|
||
2010-03-10 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/Makefile.in (SPARC/Solaris): Use sparcv8plus.
|
||
|
||
2010-02-27 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
PR ada/42253
|
||
* gcc-interface/utils2.c (build_binary_op) <EQ_EXPR>: Assert that fat
|
||
pointer base types are variant of each other. Apply special treatment
|
||
for null to fat pointer types in all cases.
|
||
|
||
2010-01-28 Pascal Obry <obry@adacore.com>
|
||
|
||
* s-win32.ads: Add some missing constants.
|
||
|
||
2010-01-28 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-attr-pm.adb (Add_Attribute): Do nothing if To_Package is
|
||
Unknown_Package.
|
||
|
||
2010-01-28 Robert Dewar <dewar@adacore.com>
|
||
|
||
* gnat_rm.texi: Minor correction
|
||
|
||
2010-01-27 Pascal Obry <obry@adacore.com>
|
||
|
||
* g-awk.adb: ensure that an AWK session is reusable.
|
||
|
||
2010-01-27 Vasiliy Fofanov <fofanov@adacore.com>
|
||
|
||
* g-regist.adb (For_Every_Key): Fix previous change.
|
||
Minor reformatting.
|
||
|
||
2010-01-27 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* lib-writ.ads: Current version of spec for new N (note) ALI lines
|
||
|
||
2010-01-27 Yannick Moy <moy@adacore.com>
|
||
|
||
* a-cdlili.adb (Insert): Correct exception message when cursor
|
||
designates wrong list.
|
||
|
||
2010-01-27 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatcmd.adb: When there is only one main specified, the package
|
||
support Switches (<main>) and attribute Switches is specified for the
|
||
main, use these switches, instead of Default_Switches ("Ada").
|
||
|
||
2010-01-27 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sem_prag.adb, par-prag.adb, snames.ads-tmpl: pragma Dimension initial
|
||
implementation.
|
||
* exp_disp.adb: Minor reformatting
|
||
|
||
2010-01-27 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* seh_init.c: Use __ImageBase instead of _ImageBase.
|
||
|
||
2010-01-27 Javier Miranda <miranda@adacore.com>
|
||
|
||
* exp_disp.ads, exp_disp.adb (Expand_Interface_Thunk): Modify the
|
||
profile of interface thunks. The type of the controlling formal is now
|
||
the covered interface type (instead of the target tagged type).
|
||
|
||
2010-01-27 Sergey Rybin <rybin@adacore.com>
|
||
|
||
* gnat_rm.texi, gnat_ugn.texi: Update gnatcheck doc.
|
||
|
||
2010-01-27 Robert Dewar <dewar@adacore.com>
|
||
|
||
* sinput.ads, sinput.adb (Sloc_Range): Applies to all nodes, formal
|
||
changed from Expr to N.
|
||
|
||
2010-01-26 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* gnat_ugn.texi: Adjust documentation of -gnatz switches.
|
||
* usage.adb: Replace line for -gnatz with two lines for -gnatzc and
|
||
-gnatzr.
|
||
|
||
2010-01-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-attr.adb: Add new attribute Library_Install_Name_Option
|
||
Replace attribute Run_Path_Origin_Supported with Run_Path_Origin
|
||
* prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
|
||
attributes Run_Path_Option and Library_Install_Name_Option.
|
||
* prj.ads (Project_Configuration): Replace component
|
||
Run_Path_Origin_Supported with component Run_Path_Origin. Add new
|
||
component Library_Install_Name_Option.
|
||
* snames.ads-tmpl: Add new standard name Library_Install_Name_Option
|
||
Replace Run_Path_Origin_Supported with Run_Path_Origin
|
||
|
||
2010-01-26 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch8.adb (Use_One_Package): Within an instance, an actual package
|
||
is not hidden by a homograph declared in another actual package.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par_sco.adb (Traverse_Declarations_Or_Statements): Only generate
|
||
decisions for pragmas Assert, Check, Precondition, Postcondition if
|
||
-gnata set.
|
||
* scos.ads: Update comments.
|
||
* get_scos.adb, put_scos.adb: Minor fix to code reading statement SCOs.
|
||
Also remove obsolete code for CT (exit point) SCOs.
|
||
|
||
2010-01-26 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* switch-c.adb: Fix handling of -gnatz*
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par_sco.adb (Traverse_Declarations_Or_Statements): Separate F/W
|
||
qualifiers for FOR/WHILE loops
|
||
* scos.ads: Use separate type letters F/W for for/while loops
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* get_scos.adb (Get_SCOs): Implement new form of CS entries (multiple
|
||
entries per line, one for each statement in the sequence).
|
||
* par_sco.adb (Traverse_Declarations_Or_Statements): Increase array
|
||
size from 100 to 10_000 for SC_Array to avoid any real possibility of
|
||
overflow. Output decisions in for loops.
|
||
Exclude labels from CS lines.
|
||
* scos.ads: Clarify that label is not included in the entry point
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par_sco.adb (Traverse_Declarations_Or_Statments): Implement new
|
||
format of statement sequence SCO entries (one location/statement).
|
||
* put_scos.adb (Put_SCOs): Implement new format of CS lines
|
||
* scos.ads: Update comments.
|
||
* sem_eval.adb: Minor reformatting.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par_sco.ads, par_sco.adb (Set_Statement_Entry): New handling of exits
|
||
(Extend_Statement_Sequence): New procedures
|
||
(Traverse_Declarations_Or_Statements): New handling for exits.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par_sco.adb (Traverse_Declarations_Or_Statements): Add processing for
|
||
Case.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* par_sco.adb (Is_Logical_Operator): Exclude AND/OR/XOR
|
||
* scos.ads: Clarify handling of logical operators
|
||
|
||
2010-01-26 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-tpoben.adb: Update comments.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* freeze.adb (Set_Small_Size): Don't set size if alignment clause
|
||
present.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* scos.ads: Clean up documentation, remove obsolete XOR references
|
||
2010-01-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnat_ugn.texi: Complete documentation on the restrictions for
|
||
combined options in -gnatxxx switches.
|
||
Fix typo.
|
||
|
||
2010-01-26 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* s-tpoben.adb (Initialize_Protection_Entries): If a PO is created from
|
||
a controlled operation, abort is already deferred at this point, so we
|
||
need to use Defer_Abort_Nestable.
|
||
|
||
2010-01-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-conf.adb (Get_Config_Switches): Check for a default language for
|
||
a project extending a project with no languages.
|
||
|
||
2010-01-26 Vincent Celier <celier@adacore.com>
|
||
|
||
* switch-c.adb (Scan_Front_End_Switches): Take into account options
|
||
that follow -gnatef.
|
||
Allow -gnateG to be followed by other options.
|
||
|
||
2010-01-26 Robert Dewar <dewar@adacore.com>
|
||
|
||
* s-commun.ads, s-osprim-mingw.adb, s-stchop-vxworks.adb, sem_aggr.adb,
|
||
s-vxwext.adb, sem_ch10.adb, sem_eval.adb, sem_prag.adb: Minor
|
||
reformatting.
|
||
|
||
2010-01-26 Vasiliy Fofanov <fofanov@adacore.com>
|
||
|
||
* g-regist.adb, g-regist.ads (For_Every_Key): New generic procedure
|
||
that allows to iterate over all subkeys of a key.
|
||
|
||
2010-01-26 Ed Falis <falis@adacore.com>
|
||
|
||
* sysdep.c: enable NFS for VxWorks MILS
|
||
* env.c: enable __gnat_environ for VxWorks MILS
|
||
* gcc-interface/Makefile.in: Add VxWorks MILS target pairs.
|
||
|
||
2010-01-25 Bob Duff <duff@adacore.com>
|
||
|
||
* sem_aggr.adb (Resolve_Array_Aggregate): Check for the case where this
|
||
is an internally-generated positional aggregate, and the bounds are
|
||
already correctly set. We don't want to overwrite those bounds with
|
||
bounds determined by context.
|
||
|
||
2010-01-25 Robert Dewar <dewar@adacore.com>
|
||
|
||
* g-sercom.ads, gnatcmd.adb, gnatlink.adb, a-ststio.adb, exp_ch6.adb,
|
||
exp_ch9.adb, g-sechas.ads: Minor reformatting.
|
||
|
||
2010-01-25 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* s-commun.adb (Last_Index): Count must be converted to SEO (a signed
|
||
integer type) before subtracting 1, otherwise the computation may wrap
|
||
(because size_t is modular) and cause the conversion to fail.
|
||
|
||
2010-01-25 Ed Falis <falis@adacore.com>
|
||
|
||
* sysdep.c, init.c: Adapt to support full run-time on VxWorks MILS.
|
||
|
||
2010-01-25 Vincent Celier <celier@adacore.com>
|
||
|
||
* prj-attr.adb: New attribute Run_Path_Origin_Required
|
||
* prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process new
|
||
attribute Run_Path_Origin_Required.
|
||
* prj.ads (Project_Configuration): New component
|
||
Run_Path_Origin_Supported.
|
||
* snames.ads-tmpl: New standard name Run_Path_Origin_Required
|
||
|
||
2010-01-25 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_aggr.adb (Resolve_Array_Aggregate): If the bounds in a choice
|
||
have errors, do not continue resolution of the aggregate.
|
||
* sem_eval.adb (Eval_Indexed_Component): Do not attempt to evaluate if
|
||
the array type indicates an error.
|
||
|
||
2010-01-25 Bob Duff <duff@adacore.com>
|
||
|
||
* sinfo.ads: Minor comment fixes.
|
||
|
||
2010-01-25 Bob Duff <duff@adacore.com>
|
||
|
||
* exp_ch4.adb, exp_aggr.adb: Minor comment fixes and code clean up.
|
||
|
||
2010-01-25 Arnaud Charlet <charlet@adacore.com>
|
||
|
||
* gnatvsn.ads (Current_Year): Update.
|
||
|
||
2010-01-25 Florian Villoing <villoing@adacore.com>
|
||
|
||
* gnat_ugn.texi: Fix typo.
|
||
|
||
2010-01-25 Thomas Quinot <quinot@adacore.com>
|
||
|
||
* scos.ads: Update specification.
|
||
|
||
2010-01-25 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_ch6.adb (Process_PPCs): If a postcondition is present and the
|
||
enclosing subprogram has no previous spec, attach postcondition
|
||
procedure to the defining entity for the body.
|
||
|
||
2010-01-25 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* exp_aggr.adb (Build_Record_Aggr_Code); Do not generate call to
|
||
initialization procedure of the ancestor part of an extension aggregate
|
||
if it is an interface type.
|
||
|
||
2010-01-25 Vincent Celier <celier@adacore.com>
|
||
|
||
* gnatlink.adb (Process_Binder_File): The directory for the shared
|
||
version of libgcc in the run path options is found in the subdirectory
|
||
indicated by __gnat_default_libgcc_subdir.
|
||
* link.c: Declare new const char * __gnat_default_libgcc_subdir for
|
||
each platform.
|
||
|
||
2010-01-25 Ed Schonberg <schonberg@adacore.com>
|
||
|
||
* sem_prag.adb: More flexible pragma Annotate.
|
||
|
||
2010-01-22 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* system-linux-armel.ads (Stack_Check_Probes): Set to True.
|
||
* system-linux-armeb.ads (Stack_Check_Probes): Likewise.
|
||
|
||
2010-01-18 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* gcc-interface/utils.c (create_var_decl_1): Fix formatting nits.
|
||
|
||
2010-01-18 Jan Hubicka <jh@suse.cz>
|
||
|
||
PR middle-end/42068
|
||
* gcc-interface/utils.c (create_var_decl_1): Do not set COMMON flag for
|
||
unit local variables.
|
||
|
||
2010-01-17 Laurent GUERBY <laurent@guerby.net>
|
||
|
||
* gcc-interface/Makefile.in: Fix typo in arm*-*-linux-gnueabi.
|
||
|
||
2010-01-11 Mikael Pettersson <mikpe@it.uu.se>
|
||
|
||
* gcc-interface/Makefile.in: Add arm*-*-linux-gnueabi.
|
||
* system-linux-armeb.ads, system-linux-armel.ads: New files.
|
||
|
||
2010-01-09 Simon Wright <simon@pushface.org>
|
||
|
||
PR ada/42626
|
||
* gcc-interface/Makefile.in (gnatlib-shared-darwin): Add missing
|
||
end-quote.
|
||
|
||
|
||
|
||
Copyright (C) 2010 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|