Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r231068
|
|
* osint.adb: Add use type clause for CRTL.size_t.
(C_String_Length): Return CRTL.size_t instead of Integer.
(To_Path_String_Access): Take CRTL.size_t instead of Integer.
(Get_Libraries_From_Registry): Use CRTL throughout.
(To_Canonical_Dir_Spec): Use CRTL.size_t instead of Integer.
(To_Canonical_File_List): Likewise.
(To_Canonical_File_Spec): Likewise.
(To_Canonical_Path_Spec): Likewise.
(To_Host_Dir_Spec): Likewise.
(To_Host_File_Spec): Likewise.
(Update_Path): Use CRTL throughout.
* s-shasto.adb: Add with clause for System.CRTL.
(Initialize): Rename CRTL.strncpy instead of importing it manually.
From-SVN: r231066
|
|
* gcc-interface/gigi.h (create_var_decl): Adjust prototype.
(create_subprog_decl): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Rename
static_p into static_flag and add volatile_flag local variable.
Do not locally change the type of a volatile object, except for the
pointed-to type if the object is handled by reference. Adjust calls
to create_var_decl.
<E_Subprogram_Type>: Likewise for const and noreturn subprograms.
(get_minimal_subprog_decl): Adjust call to create_subprog_decl.
(elaborate_expression_1): Adjust call to create_var_decl.
(gnat_to_gnu_field): Minor tweak.
* gcc-interface/trans.c (gigi): Adjust calls to create_var_decl and
create_subprog_decl.
(build_raise_check): Likewise.
(Subprogram_Body_to_gnu): Likewise.
(create_temporary): Likewise.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(Exception_Handler_to_gnu_gcc): Likewise.
(Compilation_Unit_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils.c (maybe_pad_type): Likewise.
(create_var_decl): Add VOLATILE_FLAG parameter and handle it.
(create_subprog_decl): Add CONST_FLAG and VOLATILE_FLAG parameters and
handle them.
From-SVN: r231065
|
|
* gcc-interface/gigi.h (is_simple_additive_expression): Declare.
* gcc-interface/trans.c (struct range_check_info_d): Add DISP and
NEG_P fields.
(find_loop_for): Add DISP and NEG_P parameters with default value.
Call is_simple_additive_expression to handle additive expressions.
(Loop_Statement_to_gnu): Deal with displacement in range checks.
(Raise_Error_to_gnu): Likewise.
(gnat_to_gnu): Add call to find_loop_for.
(is_simple_additive_expression): New function extracted from...
(gnat_invariant_expr): ...here. Call it on the expression.
From-SVN: r231064
|
|
From-SVN: r231063
|
|
* gcc-interface/ada-tree.h (TYPE_MAX_ALIGN): New macro.
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not set PACKED to -2.
Remove obsolete code setting the alignment on some atomic types.
When the type has no alignment but needs strict alignment and has a
size clause, compute a maximum alignment and set it on the type.
(adjust_packed): Remove handling of -2 argument. Deal with TYPE_ALIGN
and TYPE_MAX_ALIGN directly.
(gnat_to_gnu_field): Do not document -2 as argument.
(components_to_record): Likewise.
* gcc-interface/utils.c (finish_record_type): Do not bump alignment of
the record type beyond TYPE_MAX_ALIGN. Reset the latter on exit.
* gcc-interface/Makefile.in (PICFLAG_FOR_TARGET): Move around.
(GNATLIBCFLAGS_FOR_C): Reformat.
(GCC_CFLAGS): Delete.
From-SVN: r231062
|
|
2015-11-29 Matthias Klose <doko@ubuntu.com>
PR ada/68564
* gcc-interface/Makefile.in: Fix powerpc/powerpc64* and
mipsel/mips64el bitness detection.
Merge the mipsel/mips64el definitions into one.
From-SVN: r231051
|
|
2015-11-28 Matthias Klose <doko@ubuntu.com>
PR ada/68564
* gcc-interface/Makefile.in: Fix sparc/sparc64 bitness detection.
From-SVN: r231028
|
|
From-SVN: r230935
|
|
2015-11-25 Eric Botcazou <ebotcazou@adacore.com>
* gnatlink.adb (Gnatlink): Do not reinstate -fsjlj for the linker
from the switches saved in the ALI file but from the exception
settings.
2015-11-25 Arnaud Charlet <charlet@adacore.com>
* lib-xref-spark_specific.adb
(Add_SPARK_Scope): Take entry families into account.
* a-exetim.ads, a-exetim-default.ads, a-exetim-mingw.ads (Clock,
Clock_For_Interrupts): preconditions added.
* a-extiin.ads (Clock): preconditions added.
* par-ch3.adb (P_Declarative_Items): In case of misplaced
aspect specifications, ensure that flag Done is properly set to
continue parsing.
From-SVN: r230879
|
|
2015-11-25 Arnaud Charlet <charlet@adacore.com>
* exp_util.adb (Remove_Side_Effects): Minimize extra temporaries
and use of 'Reference when needed.
2015-11-25 Doug Rupp <rupp@adacore.com>
* sigtramp-vxworks-target.inc (__x86_64__): Restore context for the
sake of uniformity.
* init.c (__gnat_inum_to_ivec): Add some casting to avoid
warnings when sizeof(long) != sizeof(int)
2015-11-25 Yannick Moy <moy@adacore.com>
* lib-xref-spark_specific.adb (SPARK_Entities): Add entries for
consideration.
(Add_SPARK_Scope): Take tasks into account.
(Detect_And_Add_SPARK_Scope): Take tasks into account.
(Enclosing_Subprogram_Or_Library_Package): Take tasks into account.
From-SVN: r230878
|
|
2015-11-25 Bob Duff <duff@adacore.com>
* sem_elab.adb (Check_Internal_Call_Continue): Code clean ups.
2015-11-25 Eric Botcazou <ebotcazou@adacore.com>
* sem_util.ads (Has_Compatible_Alignment): Add Layout_Done
parameter.
* sem_util.adb (Has_Compatible_Alignment): Likewise.
(Has_Compatible_Alignment_Internal): Likewise. Do not set the
result to Unknown for packed types if Layout_Done is true.
* checks.adb (Apply_Address_Clause_Check): Adjust call and
pass False to Has_Compatible_Alignment.
* sem_ch13.adb (Validate_Address_Clauses): Likewise but pass True.
From-SVN: r230877
|
|
2015-11-25 Vincent Celier <celier@adacore.com>
* gnatcmd.adb: When <target>-gnat is called with switch -P
and a GPR tool is invoked, invoke the GPR tool with switch
--target=<target>.
2015-11-25 Hristian Kirtchev <kirtchev@adacore.com>
* opt.adb, bcheck.adb: Minor reformatting.
From-SVN: r230876
|
|
2015-11-25 Jerome Lambourg <lambourg@adacore.com>
* init.c: Enable the signal trampoline on x86_64-vx7
* sigtramp-vxworks-target.inc: Implement the signal trampoline
for x86_64
* tracebak.c: Remove the hook to use the generic
unwinder on x86_64-vx7.
2015-11-25 Vincent Celier <celier@adacore.com>
* gnatcmd.adb: When "gnat name -P" is called, invoke gprname
directly if available.
From-SVN: r230875
|
|
2015-11-25 Tristan Gingold <gingold@adacore.com>
* init.c (__gnat_is_stack_guard): Do not use mach calls for
IOS simulator.
From-SVN: r230874
|
|
... so that debugger users can reference them instead of the renamed
subprograms. This is in accordance with the DWARF specification: the
section 3.2.3 (Imported (or Renamed) Declaration Entities) allows
DW_TAG_imported_declaration DIEs to be used "as a general means to
rename or provide an alias for an entity regardless of the context in
which the importing declaration or the imported entity occur." (wording
from the DWARFv3 and DWARFv4 specifications, allowed in DWARFv2).
gcc/ada/ChangeLog:
* gcc-interface/utils.c (gnat_write_global_declarations): Output
debugging information for top-level imported declarations.
gcc/ChangeLog:
* dwarf2out.c (gen_decl_die): Generate DW_TAG_imported_* instead
of DW_TAG_namespace for IMPORTED_DECL declarations. Call
dwarf2out_imported_module_or_decl_1 for all DWARF versions as
this function already takes care of checking what it can emit.
Bootstrapped, regtested and checked with GDB's testsuite on
x86_64-linux.
From-SVN: r230821
|
|
2015-11-24 Gary Dismukes <dismukes@adacore.com>
* sem_ch3.adb, sem_type.adb, sem_ch7.adb, sem_ch9.adb, checks.adb,
sem_prag.adb, contracts.adb, g-strhas.ads, sem_ch6.adb: Minor
reformatting, rewording, and typo corrections.
From-SVN: r230794
|
|
types with discriminants.
* gcc-interface/decl.c (gnat_to_gnu_entity) <Concurrent types>: In
ASIS mode, do a minimal translation for root types with discriminants.
* gcc-interface/trans.c (gnat_to_gnu) <N_Subunit>: Move around.
<N_Entry_Body, N_Protected_Body, N_Task_Body>: Likewise. In ASIS mode,
process the declarations attached to the body.
From-SVN: r230792
|
|
for an N_Expanded_Name.
* gcc-interface/trans.c (gnat_to_gnu): In type_annotate_only mode, do
not build a NULL_EXPR for an N_Expanded_Name.
From-SVN: r230791
|
|
(indirectly) has C++ convention too.
* gcc-interface/decl.c (is_cplusplus_method): Check that the type of
the first parameter (indirectly) has C++ convention too.
From-SVN: r230788
|
|
2015-11-23 Olivier Hainque <hainque@adacore.com>
* system-aix.ads: Add Frontend_Exceptions flag.
* system-aix64.ads: Likewise.
* system-darwin-ppc.ads: Likewise.
* system-darwin-ppc64.ads: Likewise.
* system-darwin-x86.ads: Likewise.
* system-darwin-x86_64.ads: Likewise.
* system-dragonfly-x86_64.ads: Likewise.
* system-freebsd-x86.ads: Likewise.
* system-freebsd-x86_64.ads: Likewise.
* system-hpux-ia64.ads: Likewise.
* system-hpux.ads: Likewise.
* system-linux-alpha.ads: Likewise.
* system-linux-armeb.ads: Likewise.
* system-linux-armel.ads: Likewise.
* system-linux-hppa.ads: Likewise.
* system-linux-ia64.ads: Likewise.
* system-linux-mips.ads: Likewise.
* system-linux-mips64el.ads: Likewise.
* system-linux-mipsel.ads: Likewise.
* system-linux-ppc.ads: Likewise.
* system-linux-ppc64.ads: Likewise.
* system-linux-s390.ads: Likewise.
* system-linux-s390x.ads: Likewise.
* system-linux-sh4.ads: Likewise.
* system-linux-sparc.ads: Likewise.
* system-linux-sparcv9.ads: Likewise.
* system-linux-x86.ads: Likewise.
* system-linux-x86_64.ads: Likewise.
* system-mingw-x86_64.ads: Likewise.
* system-mingw.ads: Likewise.
* system-rtems.ads: Likewise.
* system-solaris-sparc.ads: Likewise.
* system-solaris-sparcv9.ads: Likewise.
* system-solaris-x86.ads: Likewise.
* system-solaris-x86_64.ads: Likewise.
* system-vxworks-arm.ads: Likewise.
* system-vxworks-m68k.ads: Likewise.
* system-vxworks-mips.ads: Likewise.
* system-vxworks-ppc.ads: Likewise.
* system-vxworks-sparcv9.ads: Likewise.
* system-vxworks-x86.ads: Likewise.
* system.ads: Likewise.
From-SVN: r230753
|
|
Back_End_SJLJ and Back_End_ZCX.
2015-11-23 Olivier Hainque <hainque@adacore.com>
Eric Botcazou <botcazou@adacore.com>
* opt.ads (Exception_Mechanism): Now three values: Front_End_SJLJ,
Back_End_SJLJ and Back_End_ZCX.
(Back_End_Exceptions, Front_End_Exceptions, ZCX_Exceptions,
SJLJ_Exceptions): New functions, reflecting properties of the current
Exception_Mechanism.
* opt.adb: Implement the new functions.
* fe.h: Bind the new Exception_Mechanism and helper functions for gigi.
* exp_ch11.adb (Expand_At_End_Handler): Replace test on mechanism by
use of property helper and update comments.
(Expand_Exception_Handlers): Replace tests on mechanism by use of
helper. Restrict Abort_Defer to ZCX specifically.
* exp_ch9.adb (Expand_N_Asynchronous_Select): Replace tests on
mechanism by calls to helper functions. Abort_Undefer for ZCX only,
paired with Expand_Exception_Handlers.
* exp_sel.adb (Build_Abort_Block_Handler): Replace tests on mechanism
by calls to helper functions. Abort_Undefer for ZCX only, paired with
Expand_Exception_Handlers.
* lib-writ.ads (P line documentation): Add entry for "FX",
representative of unit compiled with Frontend_Exceptions True.
* lib-writ.adb (Output_Main_Program_Line): Add "FX" on P line if
compiled with Frontend_Exceptions True.
* ali.ads (ALIs_Record): Ada a Frontend_Exceptions component, to reflect
whether the ALI file contained an "FX" indication on the P line.
(Frontend_Exceptions_Specified): New boolean, to keep track of whether
at least an FX ALI file is in the closure.
* ali.adb (Scan_ALI): Handle "FX" on the P line.
(Initialize_ALI): Initialize Frontend_Exceptions_Specified to False.
* targparm.ads: Update desription of exception schemes.
(Frontend_Exceptions_On_Target): New flag, reflect Frontend_Exceptions
set to True in system.ads, or not set at all.
* targparm.adb (Targparm_Tags): Add FEX to convey Frontend_Exceptions.
Rename ZCD to ZCX for consistency.
(FEX_Str, Targparm_Str, Get_Target_Parameters): Adjust accordingly.
* gnat1drv.adb (Adjust_Global_Switches): Adjust Exception_Mechanism
setting, now from combination of Frontend_Exceptions and ZCX_By_Default.
* bcheck.adb (Check_Consistent_Zero_Cost_Exception_Handling): Rename
as ...
(Check_Consistent_Exception_Handling): Check consistency of both
ZCX_By_Default and Frontend_Exceptions.
(Check_Configuration_Consistency): Check_Consistent_Exception_Handling
if either flag was set at least once.
* make.adb (Check): Remove processing of a possible -fsjlj coming from
lang-specs.h.
* gnatlink.adb (Gnatlin): Likewise.
* gcc-interface/Makefile.in (gnatlib-sjlj/zcx): Now set
both ZCX_By_Default and Frontend_Exceptions.
* gcc-interface/decl.c (gnat_to_gnu_entity, case E_Variable):
Use eh property helper to test for back-end exceptions. Adjust
mechanism name when testing for front-end sjlj.
(case E_Procedure): Likewise.
* gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu):
Likewise, and rename local variables.
(Exception_Handler_to_gnu_sjlj): Rename as
Exception_Handler_to_gnu_fe_sjlj.
(Exception_Handler_to_gnu_zcx): Rename as
Exception_Handler_to_gnu_gcc and adjust tests on eh mechanisms
to use property helpers or correct mechanism name.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r230752
|
|
2015-11-19 Bob Duff <duff@adacore.com>
* sem_elab.adb (Check_Internal_Call_Continue): Correction to previous
change: correctly handle generic formals/actuals that look like
renamings.
From-SVN: r230617
|
|
* gcc-interface/trans.c (elaborate_all_entities_for_package): New
function extracted from... Recurse on packages.
(elaborate_all_entities): ...here. Call it on packages.
From-SVN: r230576
|
|
* gcc-interface/ada-tree.h (DECL_INVARIANT_P): New macro.
* gcc-interface/gigi.h (enum standard_datatypes): Remove
ADT_longjmp_decl and add ADT_not_handled_by_others_decl.
(longjmp_decl): Delete.
(not_handled_by_others_decl): New macro.
(build_simple_component_ref): Delete.
(build_component_ref): Adjust prototype.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust calls to
build_component_ref.
(gnat_to_gnu_field): Set DECL_INVARIANT_P on discriminants
without default value.
* gcc-interface/trans.c (gigi): Reorder initialization sequence
and add not_handled_by_others_decl.
(Attribute_to_gnu): Adjust calls to build_component_ref.
(Subprogram_Body_to_gnu): Likewise.
(Call_to_gnu): Likewise.
(Exception_Handler_to_gnu_sjlj): Likewise.
(gnat_to_gnu): Likewise.
(range_check_info_d): Add inserted_cond field.
(Loop_Statement_to_gnu): Make two passes on the recorded range checks.
(build_noreturn_cond): New static function.
(Raise_Error_to_gnu): Record range checks in loops at -O1 and above.
(make_invariant): New static function.
(Loop_Statement_to_gnu): Use it to compute invariant expressions for
the loop bounds if possible, but do not require it if loop unswitching
is enabled.
* gcc-interface/utils.c (convert_to_fat_pointer): Likewise.
(convert): Likewise.
(maybe_unconstrained_array): Likewise. Call it instead of
build_simple_component_ref and add guard for CONSTRUCTORs.
(unchecked_convert): Likewise.
* gcc-interface/utils2.c (compare_fat_pointers): Likewise.
(build_simple_component_ref): Remove COMPONENT parameter, unify
code dealing with VIEW_CONVERT_EXPR and make it more general,
remove special treatment for CONSTRUCTORs of template types.
(build_component_ref): Remove COMPONENT parameter and adjust call
to build_simple_component_ref.
(maybe_wrap_malloc): Likewise.
(build_allocator): Likewise.
(gnat_invariant_expr): Look through overflow checks, deal with
addition and subtraction of constants and take into account
DECL_INVARIANT_P for the COMPONENT_REF case.
From-SVN: r230575
|
|
* gcc-interface/misc.c: Move global variables to the top of the file.
(gnat_handle_option): Remove obsolete ATTRIBUTE_UNUSED markers.
(gnat_init_options): Minor tweak.
(gnat_post_options): Set -fstrict-overflow if not done by the user.
(internal_error_function): Minor reformatting.
From-SVN: r230569
|
|
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Use case #1
for the renaming of an address.
From-SVN: r230560
|
|
then bail out.
* gcc-interface/trans.c (fold_constant_decl_in_expr) <ARRAY_REF>: If
the index is not itself constant then bail out.
From-SVN: r230558
|
|
for the potentially overloaded calls to...
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Try_Container_Indexing): When constructing the
parameter list for the potentially overloaded calls to indexing
functions, do not propagate overloadings if the actual is a named
association: overloadings appear directly on the expression in
the association.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_type.adb (Interface_Present_In_Ancestor): If the type is
incomplete, the list of ancestors is found either on the full
view or the non-limited view of the type.
From-SVN: r230547
|
|
2015-11-18 Nicolas Roche <roche@adacore.com>
* sysdep.c (__gnat_localtime_tzoff): On Windows platform
GetTimeZoneInformation function is thread-safe. Thus there
is no need to lock the runtime in the implementation of
__gnat_localtime_tzoff on that platform.
2015-11-18 Eric Botcazou <ebotcazou@adacore.com>
* s-arit64.adb (To_Neg_Int): Add a special case for 2**63 input.
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* contracts.adb (Analyze_Contracts): New routine.
(Analyze_Enclosing_Package_Body_Contract): Removed.
(Analyze_Entry_Or_Subprogram_Contract): Add formal parameter
Freeze_Id. Propagate the entity of the freezing body to vaious
analysis routines.
(Analyze_Initial_Declaration_Contract): Removed.
(Analyze_Object_Contract): Add formal parameter
Freeze_Id. Propagate the entity of the freezing body to vaious
analysis routines.
(Analyze_Previous_Contracts): New routine.
* contracts.ads (Analyze_Enclosing_Package_Body_Contract): Removed.
(Analyze_Contracts): New routine.
(Analyze_Entry_Or_Subprogram_Contract): Add formal
parameter Freeze_Id and update the comment on usage.
(Analyze_Initial_Declaration_Contract): Removed.
(Analyze_Object_Contract): Add formal parameter Freeze_Id and
update the comment on usage.
(Analyze_Previous_Contracts): New routine.
* sem_ch3.adb (Analyze_Declarations): Use Analyze_Contracts to
analyze all contracts of eligible constructs.
* sem_ch6.adb (Analyze_Generic_Subprogram_Body):
A body no longer freezes the contract of its initial
declaration. This effect is achieved through different means.
(Analyze_Subprogram_Body_Helper): A body now freezes the contracts
of all eligible constructs that precede it. A body no longer
freezes the contract of its initial declaration. This effect is
achieved through different means.
* sem_ch7.adb (Analyze_Package_Body_Helper): A body now freezes
the contracts of all eligible constructs that precede it. A body
no longer freezes the contract of its initial declaration. This
effect is achieved through different means.
* sem_ch9.adb (Analyze_Entry_Body): A body now freezes
the contracts of all eligible constructs that precede
it. A body no longer freezes the contract of its initial
declaration. This effect is achieved through different means.
(Analyze_Protected_Body): A body now freezes the contracts
of all eligible constructs that precede it. A body no longer
freezes the contract of its initial declaration. This effect
is achieved through different means.
(Analyze_Task_Body): A
body now freezes the contracts of all eligible constructs that
precede it. A body no longer freezes the contract of its initial
declaration. This effect is achieved through different means.
* sem_prag.adb (Add_Item_To_Name_Buffer): Single protected/task
objects now output their respective current instance of xxx
type messages. (Analyze_Contract_Cases_In_Decl_Part): Add
formal parameter Freeze_Id. Emit a clarification message
when an undefined entity may the byproduct of contract
freezing.
(Analyze_Part_Of_In_Decl_Part): Add formal
parameter Freeze_Id. Emit a clarification message when an
undefined entity may the byproduct of contract freezing.
(Analyze_Pre_Post_Condition_In_Decl_Part): Add formal
parameter Freeze_Id. Emit a clarification message when an
undefined entity may the byproduct of contract freezing.
(Analyze_Refined_State_In_Decl_Part): Do not report unused body
states as constituents of single protected/task types may not
bave been identified yet.
(Collect_Subprogram_Inputs_Outputs):
Reimplemented. (Contract_Freeze_Error): New routine.
(Process_Overloadable): Use predicate Is_Single_Task_Object.
* sem_prag.ads (Analyze_Contract_Cases_In_Decl_Part):
Add formal parameter Freeze_Id and update the comment
on usage.
(Analyze_Part_Of_In_Decl_Part): Add formal
parameter Freeze_Id and update the comment on usage.
(Analyze_Pre_Post_Condition_In_Decl_Part): Add formal parameter
Freeze_Id and update the comment on usage.
* sem_util.adb (Check_Unused_Body_States): Remove global
variable Legal_Constits. The routine now reports unused
body states regardless of whether constituents are
legal or not.
(Collect_Body_States): A constituent of a
single protected/task type is not a visible state of a
package body.
(Collect_Visible_States): A constituent
of a single protected/task type is not a visible
state of a package body.
(Has_Undefined_Reference): New routine.
(Is_Single_Concurrent_Object): Reimplemented.
(Is_Single_Protected_Object): New routine.
(Is_Single_Task_Object): New routine.
(Is_Visible_Object): New routine.
(Report_Unused_Body_States): Moved to Check_Unused_Body_States.
* sem_util.ads (Check_Unused_Body_States): Update the comment on usage.
(Has_Undefined_Reference): New routine.
(Is_Single_Protected_Object): New routine.
(Is_Single_Task_Object): New routine.
(Report_Unused_Body_States): Moved to Check_Unused_Body_States.
2015-11-18 Pierre-Marie de Rodat <derodat@adacore.com>
* Makefile.rtl, impunit.adb: Add g-strhas.ads.
* g-strhas.ads: New file.
* s-strhas.ads: Add a comment to redirect users to g-strhas.ads.
2015-11-18 Bob Duff <duff@adacore.com>
* sem_elab.adb (Check_Internal_Call_Continue): Fix the case
where the call in question is to a renaming of a subprogram that
can be safely called without ABE.
* checks.adb: Minor edits.
From-SVN: r230546
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* atree.adb (Elist11): New routine.
(Set_Elist11): New routine.
* atree.ads (Elist11): New routine.
(Set_Elist11): New routine.
* atree.h: Define Elist11.
* contracts.adb (Analyze_Object_Contract): Verify the legality
of all references to a variable given that the variable is a
constituent of a single protected/task type.
* einfo.adb: Part_Of_References now utilizes Elist11.
(Part_Of_References): New routine.
(Set_Part_Of_References): New routine.
(Write_Field11_Name): Add output for Part_Of_References.
* einfo.ads New attribute Part_Of_References along with usage
in entities.
(Part_Of_References): New routine along with
pragma Inline.
(Set_Part_Of_References): New routine along with pragma Inline.
* sem_prag.adb (Analyze_Constituent): Record a possible
reference to a concurrent constituent.
(Analyze_Global_Item): Record a possible reference to a concurrent
constituent.
(Analyze_Input_Output): Record a possible reference to a
concurrent constituent.
* sem_res.adb (Resolve_Entity_Name): Record a possible reference
to a concurrent constituent.
* sem_util.adb (Check_Part_Of_Reference): New routine.
(Record_Possible_Part_Of_Reference): New routine.
* sem_util.ads (Check_Part_Of_Reference): New routine.
(Record_Possible_Part_Of_Reference): New routine.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated):
An if_expression is the proper place to apply the overflow
minimization procedure if its context is not an enclosing
arithmetic expression.
From-SVN: r230540
|
|
From-SVN: r230539
|
|
* gnat_ugn/gnat_project_manager.rst,
gnat_ugn/building_executable_programs_with_gnat.rst,
gnat_ugn/gnat_and_program_execution.rst,
gnat_ugn/the_gnat_compilation_model.rst,
gnat_rm/implementation_defined_pragmas.rst,
gnat_rm/standard_and_implementation_defined_restrictions.rst,
gnat_ugn.texi, gnat_rm.texi: Update doc.
From-SVN: r230538
|
|
From-SVN: r230537
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* contracts.adb (Add_Contract_Item): Chain pragmas Attach_Handler
and Interrupt_Handler on the classifications list of a [generic]
procedure N_Contract node.
* contracts.ads (Add_Contract_Item): Update the comment on usage.
* einfo.adb (Get_Pragma): Pragmas Attach_Handler and
Interrupt_Handler are found on the classifications list of
N_Contract nodes.
* einfo.ads (Get_Pragma): Update the comment on usage.
* sem_prag.adb (Process_Interrupt_Or_Attach_Handler): Code
reformatting. Store the pragma as a contract item.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Available_Subtype): Use only in GNATprove
mode. When generating code it may be necessary to create itypes
at the point of use of a selected component, for example in the
expansion of a record equality operation.
2015-11-18 Vincent Celier <celier@adacore.com>
* s-os_lib.adb (Normalize_Pathname.Get_Directory): When
invoking Normalize_Pathname, use the same values for parameters
Resolve_Links and Case_Sensitive as the parent Normalize_Pathname.
2015-11-18 Vincent Celier <celier@adacore.com>
* a-direct.adb (Containing_Directory): Return "." when the result
is the current directory, not specified as an absolute path name.
From-SVN: r230536
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* exp_aggr.adb (Is_Completely_Hidden_Discriminant): New routine.
(Init_Hidden_Discriminants): Code reformatting. Do not initialize
a completely hidden discriminant.
* a-interr.ads (Get_CPU): Added SPARK_Mode, Volatile_Function
and Global aspects on the function.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* exp_intr.adb (Expand_Unc_Deallocation): If the designated
type is a concurrent type, the deallocation applies to the
corresponding record type, or to its class-wide type if the type
is tagged.
From-SVN: r230535
|
|
reasonable value
2015-11-18 Doug Rupp <rupp@adacore.com>
* s-parame-vxworks.adb: Reduce default stack size for stack
limit check to a reasonable value
* s-tpopsp-vxworks.adb: Make Stack_Limit a task variable for vx5 and
vxmils.
From-SVN: r230534
|
|
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch5.adb (Analyze_Assignment): Diagnose assignment where
left-hand side has a limited view of a class-wide type.
* sem_ch6.adb (Detected_And_Exchange): Do not install a non-limited
view if the scope of the type of the formal is visible through
a limited_with_clause, even if the non-limited view is available.
2015-11-18 Emmanuel Briot <briot@adacore.com>
* s-pooglo.ads: Make Global_Pool_Object aliased.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_attr.adb (Analyze_Attribute, case 'Access): If the prefix
is an expression function, do not analyze the generated body if
the current scope is not the scope of the expression function,
as may happen if the attribute is an actual in an instantiation.
* sem_ch10.adb, sem_ch12.adb, a-stzmap.adb, s-soflin.adb,
a-stwima.adb: Fix typos.
2015-11-18 Arnaud Charlet <charlet@adacore.com>
* exp_ch11.adb (Expand_N_Exception_Declaration): No-op when
generating C code.
2015-11-18 Vincent Celier <celier@adacore.com>
* g-comlin.adb (Find_Longest_Matching_Switch): Do not take into
account a switch ending with '=' when the actual command line
switch is not followed with a space or '='.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Resolve_Explicit_Dereference): Do not add an access
check if the type of the prefix is known to exclude null.
* a-coinve.adb (Get_Element_Access): The function returns an
access type that excludes null, so add an explicit check for
a null element pointer, which is created when Insert_Spaces is
called on an indefinite vector container.
From-SVN: r230533
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
PR ada/66242
* exp_ch3.adb (Default_Initialize_Object): Reimplemented. Abort
defer / undefer pairs are now encapsulated in a block with
an AT END handler. Partial finalization now takes restriction
No_Exception_Propagation into account when generating blocks.
* exp_ch7.adb Various reformattings.
(Create_Finalizer): Change
the generation of abort defer / undefer pairs and explain the
lack of an AT END handler.
(Process_Transient_Objects): Add generation of abort defer/undefer
pairs.
* exp_ch9.adb Various reformattings.
(Build_Protected_Subprogram_Body): Use
Build_Runtime_Call to construct a call to Abort_Defer.
(Build_Protected_Subprogram_Call_Cleanup): Use
Build_Runtime_Call to construct a call to Abort_Undefer.
(Expand_N_Asynchronous_Select): Use Build_Runtime_Call to
construct a call to Abort_Defer.
* exp_intr.adb (Expand_Unc_Deallocation): Abort defer
/ undefer pairs are now encapsulated in a block with
an AT END handler. Finalization now takes restriction
No_Exception_Propagation into account when generating blocks.
* exp_util.ads, exp_util.adb (Wrap_Cleanup_Procedure): Removed.
From-SVN: r230531
|
|
2015-11-18 Arnaud Charlet <charlet@adacore.com>
* switch-c.adb (Scan_Front_End_Switches): Add a check requiring
-gnatc with -gnateg.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch7.adb (Uninstall_Declarations): Before swapping private
and full views, ensure that the potential use visbility of the
two views is consistent.
2015-11-18 Doug Rupp <rupp@adacore.com>
* s-parame-vxworks.adb: Increase default stack size for targets
using stack limit checking.
2015-11-18 Jose Ruiz <ruiz@adacore.com>
* a-interr.adb, a-interr.ads (Ada.Interrupts.Get_CPU): Add this
function that was added to Ada 2005 returning the processor where
interrupt handlers execute.
2015-11-18 Tristan Gingold <gingold@adacore.com>
* exp_ch9.adb (Is_Pure_Barrier): Handle expanded component
declaration of a protected definition.
From-SVN: r230529
|
|
2015-11-18 Ed Falis <falis@adacore.com>
* s-soflin.adb, s-stchop-vxworks.adb: Code clean ups.
2015-11-18 Gary Dismukes <dismukes@adacore.com>
* bcheck.adb: Minor editorial changes.
From-SVN: r230528
|
|
2015-11-18 Arnaud Charlet <charlet@adacore.com>
* interfac.ads (Unsigned_24): New type.
* sem_ch13.adb (Validate_Unchecked_Conversion): Disable error on
unconstrained arrays in Relaxed_RM_Semantics mode.
2015-11-18 Vincent Celier <celier@adacore.com>
* bcheck.adb (Check_Consistent_Dynamic_Elaboration_Checking): No
warning is withed unit is the interface of a Stand-Alone Library.
From-SVN: r230527
|
|
2015-11-18 Thomas Quinot <quinot@adacore.com>
* s-os_lib.ads, s-os_lib.adb(Normalize_Pathname): Support the case of
an unresolved Directory argument, by recursively resolving it
against the current dir.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Process_Formals): A function declaration that
returns a class-wide type must have freeing deferred, so that it
is not frozen before the class-wide type and its root type are
frozen. This is significant when there may be a limited view of
the class_wide type in another package.
From-SVN: r230526
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb (Has_Non_Null_Refinement): Rename to
Has_Non_Null_Visible_Refinement.
(Has_Null_Refinement): Rename to Has_Null_Visible_Refinement.
* einfo.ads Update the documentation of
attribute Has_Non_Null_Refinement and attribute Has_Null_Refinement.
(Has_Non_Null_Refinement): Rename to Has_Non_Null_Visible_Refinement
and update occurrences in entities.
(Has_Null_Refinement): Rename to Has_Null_Visible_Refinement and update
occurrences in entities.
* sem_prag.adb (Check_In_Out_States): Update the calls to
Has_[Non_]Null_Refinement.
(Check_Input_States): Update the
calls to Has_[Non_]Null_Refinement.
(Check_Output_States): Update the calls to Has_[Non_]Null_Refinement.
(Check_Proof_In_States): Update the calls to Has_[Non_]Null_Refinement.
(Collect_Global_Item): Update the calls to Has_[Non_]Null_Refinement.
(Is_Null_Refined_State): Update the calls to Has_[Non_]Null_Refinement.
(Match_Item): Update the calls to Has_[Non_]Null_Refinement.
* sem_util.adb (Has_Non_Null_Refinement): New routine.
(Has_Null_Refinement): New routine.
* sem_util.ads (Has_Non_Null_Refinement): New routine.
(Has_Null_Refinement): New routine.
2015-11-18 Gary Dismukes <dismukes@adacore.com>
* exp_util.adb: Minor reformatting and typo fixes.
From-SVN: r230525
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch4.adb: Minor reformatting.
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* exp_util.adb (Expand_Subtype_From_Expr): Add new formal
parameter Related_Id and propagate it to Make_Subtype_From_Expr.
(Make_Subtype_From_Expr): Add new formal parameter
Related_Id. Create external entities when requested by the caller.
* exp_util.ads (Expand_Subtype_From_Expr): Add new formal
parameter Related_Id. Update the comment on usage.
(Make_Subtype_From_Expr): Add new formal parameter
Related_Id. Update the comment on usage.
* sem_ch3.adb (Analyze_Object_Declaration): Add local variable
Related_Id. Generate an external constrained subtype when the
object is a public symbol.
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Analyze_Pragma): Update the grammars of pragmas
Abstract_State, Depends, Global, Initializes, Refined_Depends,
Refined_Global and Refined_State.
From-SVN: r230524
|
|
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* sem_util.adb (Has_Full_Default_Initialization):
Perform the test for the presence of pragma
Default_Initial_Condition prior to the specialized type
checks. Add a missing case where the lack of a pragma argument
yields full default initialization.
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* sem_res.adb (Resolve_Entity_Name): Do not check
for elaboration issues when a variable appears as the name of
an object renaming declaration as this constitutes an aliasing,
not a read.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* checks.adb (Overlap_Check): An actual that is an aggregate
cannot overlap with another actual, and no check should be
generated for it.
* targparm.ads: Fix typos.
2015-11-18 Pascal Obry <obry@adacore.com>
* adaint.c: Routine __gnat_killprocesstree only implemented on
Linux and Windows.
2015-11-18 Pascal Obry <obry@adacore.com>
* g-ctrl_c.adb: Minor style fixes.
From-SVN: r230523
|
|
2015-11-18 Pascal Obry <obry@adacore.com>
* adaint.c, s-os_lib.adb, s-os_lib.ads (Kill_Process_Tree): New.
2015-11-18 Hristian Kirtchev <kirtchev@adacore.com>
* sem_util.adb (Check_Nonvolatile_Function_Profile): Place the error
message concerning the return type on the result definition.
(Is_Volatile_Function): A function with a parameter of a protected
type is a protected function if it is defined within a protected
definition.
2015-11-18 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Try_Container_Indexing): When building the
parameter list for the function call on indexing functions,
preserve overloading of the parameters, which may themselves be
generalized indexing operations.
From-SVN: r230522
|
|
2015-11-13 Arnaud Charlet <charlet@adacore.com>
PR ada/68345
* s-osinte-dragonfly.ads (Get_Page_Size): C function returns an int.
From-SVN: r230373
|
|
This patch combines:
[PATCH 05/10] Add ranges to libcpp tokens (via ad-hoc data, unoptimized)
[PATCH 06/10] Track expression ranges in C frontend
[PATCH 07/10] Add plugin to recursively dump the source-ranges in a tree (v2)
[PATCH 08/10] Wire things up so that libcpp users get token underlines
[PATCH 09/10] Delay some resolution of ad-hoc locations, preserving ranges
[PATCH 10/10] Compress short ranges into source_location
[PATCH] libcpp: add examples to source_location description
along with fixes for the nits identified during review.
gcc/ChangeLog:
* Makefile.in (OBJS): Add gcc-rich-location.o.
* diagnostic.c (diagnostic_append_note): Pass line_table to
rich_location ctor.
(emit_diagnostic): Likewise.
(inform): Likewise.
(inform_n): Likewise.
(warning): Likewise.
(warning_at): Likewise.
(warning_n): Likewise.
(pedwarn): Likewise.
(permerror): Likewise.
(error): Likewise.
(error_n): Likewise.
(error_at): Likewise.
(sorry): Likewise.
(fatal_error): Likewise.
(internal_error): Likewise.
(internal_error_no_backtrace): Likewise.
(source_range::debug): Likewise.
* gcc-rich-location.c: New file.
* gcc-rich-location.h: New file.
* genmatch.c (fatal_at): Pass line_table to rich_location ctor.
(warning_at): Likewise.
* gimple.h (gimple_set_block): Use set_block function.
* input.c (dump_line_table_statistics): Dump stats on how many
ranges were optimized vs how many needed ad-hoc table.
(write_digit_row): Add "map" param; use its range_bits
to calculate the per-character offset.
(dump_location_info): Print the range and column bits for each
ordinary map. Use the range bits to calculate the per-character
offset. Pass the map as a new param to the various calls to
write_digit_row. Eliminate uses of
ORDINARY_MAP_NUMBER_OF_COLUMN_BITS.
* print-tree.c (print_node): Print any source range information.
* rtl-error.c (diagnostic_for_asm): Likewise.
* toplev.c (general_init): Initialize line_table's
default_range_bits.
* tree-cfg.c (move_block_to_fn): Likewise.
(move_block_to_fn): Likewise.
* tree-inline.c (copy_phis_for_bb): Likewise.
* tree.c (tree_set_block): Likewise.
(get_pure_location): New function.
(set_source_range): New functions.
(set_block): New function.
(set_source_range): New functions.
* tree.h (CAN_HAVE_RANGE_P): New.
(EXPR_LOCATION_RANGE): New.
(EXPR_HAS_RANGE): New.
(get_expr_source_range): New inline function.
(DECL_LOCATION_RANGE): New.
(set_source_range): New decls.
(get_decl_source_range): New inline function.
gcc/ada/ChangeLog:
* gcc-interface/trans.c (Sloc_to_locus): Add line_table param when
calling linemap_position_for_line_and_column.
gcc/c-family/ChangeLog:
* c-common.c (c_fully_fold_internal): Capture existing souce_range,
and store it on the result.
* c-opts.c (c_common_init_options): Set
global_dc->colorize_source_p.
gcc/c/ChangeLog:
* c-decl.c (warn_defaults_to): Pass line_table to
rich_location ctor.
* c-errors.c (pedwarn_c99): Likewise.
(pedwarn_c90): Likewise.
* c-parser.c (set_c_expr_source_range): New functions.
(c_token::get_range): New method.
(c_token::get_finish): New method.
(c_parser_expr_no_commas): Call set_c_expr_source_range on the ret
based on the range from the start of the LHS to the end of the
RHS.
(c_parser_conditional_expression): Likewise, based on the range
from the start of the cond.value to the end of exp2.value.
(c_parser_binary_expression): Call set_c_expr_source_range on
the stack values for TRUTH_ANDIF_EXPR and TRUTH_ORIF_EXPR.
(c_parser_cast_expression): Call set_c_expr_source_range on ret
based on the cast_loc through to the end of the expr.
(c_parser_unary_expression): Likewise, based on the
op_loc through to the end of op.
(c_parser_sizeof_expression) Likewise, based on the start of the
sizeof token through to either the closing paren or the end of
expr.
(c_parser_postfix_expression): Likewise, using the token range,
or from the open paren through to the close paren for
parenthesized expressions.
(c_parser_postfix_expression_after_primary): Likewise, for
various kinds of expression.
* c-tree.h (struct c_expr): Add field "src_range".
(c_expr::get_start): New method.
(c_expr::get_finish): New method.
(set_c_expr_source_range): New decls.
* c-typeck.c (parser_build_unary_op): Call set_c_expr_source_range
on ret for prefix unary ops.
(parser_build_binary_op): Likewise, running from the start of
arg1.value through to the end of arg2.value.
gcc/cp/ChangeLog:
* error.c (pedwarn_cxx98): Pass line_table to rich_location ctor.
gcc/fortran/ChangeLog:
* error.c (gfc_warning): Pass line_table to rich_location ctor.
(gfc_warning_now_at): Likewise.
(gfc_warning_now): Likewise.
(gfc_error_now): Likewise.
(gfc_fatal_error): Likewise.
(gfc_error): Likewise.
(gfc_internal_error): Likewise.
gcc/testsuite/ChangeLog:
* gcc.dg/diagnostic-token-ranges.c: New file.
* gcc.dg/diagnostic-tree-expr-ranges-2.c: New file.
* gcc.dg/plugin/diagnostic-test-expressions-1.c: New file.
* gcc.dg/plugin/diagnostic-test-show-trees-1.c: New file.
* gcc.dg/plugin/diagnostic_plugin_show_trees.c: New file.
* gcc.dg/plugin/diagnostic_plugin_test_show_locus.c (get_loc): Add
line_table param when calling
linemap_position_for_line_and_column.
(test_show_locus): Pass line_table to rich_location ctors.
(plugin_init): Remove setting of global_dc->colorize_source_p.
* gcc.dg/plugin/diagnostic_plugin_test_tree_expression_range.c:
New file.
* gcc.dg/plugin/plugin.exp (plugin_test_list): Add
diagnostic_plugin_test_tree_expression_range.c,
diagnostic-test-expressions-1.c, diagnostic_plugin_show_trees.c,
and diagnostic-test-show-trees-1.c.
libcpp/ChangeLog:
* errors.c (cpp_diagnostic): Pass pfile->line_table to
rich_location ctor.
(cpp_diagnostic_with_line): Likewise.
* include/cpplib.h (struct cpp_token): Update comment for src_loc
to indicate that the range of the token is "baked into" the
source_location.
* include/line-map.h (source_location): Update the descriptive
comment to reflect the packing scheme for short ranges, adding
worked examples of location encoding.
(struct line_map_ordinary): Drop field "column_bits" in favor
of field "m_column_and_range_bits"; add field "m_range_bits".
(ORDINARY_MAP_NUMBER_OF_COLUMN_BITS): Delete.
(location_adhoc_data): Add source_range field.
(struct line_maps): Add fields "default_range_bits",
"num_optimized_ranges" and "num_unoptimized_ranges".
(get_combined_adhoc_loc): Add source_range param.
(get_range_from_loc): New declaration.
(pure_location_p): New prototype.
(COMBINE_LOCATION_DATA): Add source_range param.
(SOURCE_LINE): Update for renaming of column_bits.
(SOURCE_COLUMN): Likewise. Shift the column right by the map's
range_bits.
(LAST_SOURCE_LINE_LOCATION): Update for renaming of column_bits.
(linemap_position_for_line_and_column): Add line_maps * params.
(rich_location::rich_location): Likewise.
* lex.c (_cpp_lex_direct): Capture the range of the token, baking
it into token->src_loc via a call to COMBINE_LOCATION_DATA.
* line-map.c (LINE_MAP_MAX_COLUMN_NUMBER): Reduce from 1U << 17 to
1U << 12.
(location_adhoc_data_hash): Add the src_range into
the hash value.
(location_adhoc_data_eq): Require equality of the src_range
values.
(can_be_stored_compactly_p): New function.
(get_combined_adhoc_loc): Add src_range param, and store it,
via a bit-packing scheme for short ranges, otherwise within the
lookaside table. Remove the requirement that data is non-NULL.
(get_range_from_adhoc_loc): New function.
(get_range_from_loc): New function.
(pure_location_p): New function.
(linemap_add): Ensure that start_location has zero for the
range_bits, unless we're past LINE_MAP_MAX_LOCATION_WITH_COLS.
Initialize range_bits to zero. Assert that the start_location
is "pure".
(linemap_line_start): Assert that the
column_and_range_bits >= range_bits.
Update determinination of whether we need to start a new map
using the effective column bits, without the range bits.
Use the set's default_range_bits in new maps, apart from
those with column_bits == 0, which should also have 0 range_bits.
Increase the column bits for new maps by the range bits.
When adding lines to an existing map, use set->highest_line
directly rather than offsetting highest by SOURCE_COLUMN.
Add assertions to sanity-check the return value.
(linemap_position_for_column): Offset to_column by range_bits.
Update set->highest_location if necessary.
(linemap_position_for_line_and_column): Add line_maps * param.
Update the calculation to offset the column by range_bits, and
conditionalize it on being <= LINE_MAP_MAX_LOCATION_WITH_COLS.
Bound it by LINEMAPS_MACRO_LOWEST_LOCATION. Update
set->highest_location if necessary.
(linemap_position_for_loc_and_offset): Handle ad-hoc locations;
pass "set" to linemap_position_for_line_and_column.
(linemap_macro_map_loc_unwind_toward_spelling): Add line_maps
param. Handle ad-hoc locations.
(linemap_location_in_system_header_p): Pass on "set" to call to
linemap_macro_map_loc_unwind_toward_spelling.
(linemap_macro_loc_to_spelling_point): Retain ad-hoc locations.
Pass on "set" to call to
linemap_macro_map_loc_unwind_toward_spelling.
(linemap_resolve_location): Retain ad-hoc locations. Pass on
"set" to call to linemap_macro_map_loc_unwind_toward_spelling.
(linemap_unwind_toward_expansion): Pass on "set" to call to
linemap_macro_map_loc_unwind_toward_spelling.
(linemap_expand_location): Extract the data pointer before
extracting the location.
(rich_location::rich_location): Add line_maps param; use it to
extract the range from the source_location.
* location-example.txt: Regenerate, showing new representation.
From-SVN: r230331
|
|
2015-11-13 Hristian Kirtchev <kirtchev@adacore.com>
* exp_attr.adb: Minor reformatting.
2015-11-13 Pascal Obry <obry@adacore.com>
* adaint.c: Ensure that it is possible to get killed process
status on Windows.
From-SVN: r230318
|