+2019-09-17 Vadim Godunko <godunko@adacore.com>
+
+ * libgnat/g-expect.adb (Expect_Internal): Try to call 'poll' few
+ times.
+
+2019-09-17 Vadim Godunko <godunko@adacore.com>
+
+ * libgnat/g-expect.ads, libgnat/g-expect.adb (Close_Input): New
+ subprogram.
+ (Get_Command_Output): Call Close_Input to close input stream.
+ (Expect_Internal): Likewise.
+ (Close): Likewise.
+ * libgnat/g-exptty.adb (Close): Likewise.
+
+2019-09-17 Piotr Trojanek <trojanek@adacore.com>
+
+ * sem_util.ads, sem_util.adb (Is_Attribute_Old): New utility
+ routine.
+
+2019-09-17 Yannick Moy <moy@adacore.com>
+
+ * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Add handling
+ for dispatching operations.
+
+2019-09-17 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): In a
+ generic context, for a Predicate aspect, use
+ Preanalyze_Spec_Expression to verify conformance.
+
+2019-09-17 Javier Miranda <miranda@adacore.com>
+
+ * sem_ch3.adb (Constrain_Corresponding_Record): Propagate
+ attribute Is_Tagged_Type.
+
+2019-09-17 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch3.adb (Build_Record_Init_Proc): Do not generate code to
+ adjust the tag component when the record is initialized with a
+ raise expression.
+ * sem_aggr.adb (Valid_Limited_Ancestor): Return True for
+ N_Raise_Expression nodes.
+ (Valid_Ancestor_Type): Return True for raise expressions.
+ * sem_ch3.adb (Analyze_Component_Declaration): Do not report an
+ error when a component is initialized with a raise expression.
+ * sem_ch4.adb (Analyze_Qualified_Expression): Do not report an
+ error when the aggregate has a raise expression.
+
+2019-09-17 Piotr Trojanek <trojanek@adacore.com>
+
+ * ali.ads: Fix casing in comment.
+ * ali-util.ads, ali-util.adb (Read_Withed_ALIs): Remove
+ Ignore_Errors parameter; it was only set to non-default value of
+ True when running in GNATprove_Mode and wrongly reset to False
+ when calling this routine recursively. Now in GNATprove mode we
+ want it to be always True, so in fact it is equivalent to
+ GNATProve_Mode flag itself (which was already used in this
+ routine).
+
+2019-09-17 Arnaud Charlet <charlet@adacore.com>
+
+ * adaint.c (_REENTRANT, _THREAD_SAFE): Only define if needed.
+
+2019-09-17 Arnaud Charlet <charlet@adacore.com>
+
+ * libgnat/s-bitfie.ads (Val_Bits, Val_Bytes): Define from
+ Long_Long_Integer'Size.
+
+2019-09-17 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch6.ads (Needs_BIP_Task_Actuals): New subprogram.
+ * exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call): Code
+ cleanup.
+ (Check_Number_Of_Actuals): New subprogram.
+ (Make_Build_In_Place_Call_In_Allocator): Adding assertion.
+ (Make_Build_In_Place_Call_In_Anonymous_Context): Adding
+ assertion.
+ (Make_Build_In_Place_Call_In_Assignment): Adding assertion.
+ (Make_Build_In_Place_Call_In_Object_Declaration): Code cleanup
+ plus assertion addition.
+ (Needs_BIP_Task_Actuals): New subprogram.
+ * sem_ch6.adb (Create_Extra_Formals): Rely on
+ Needs_BIP_Task_Actuals() to check if the master of the tasks to
+ be created, and the caller's activation chain formals are
+ needed.
+
+2019-09-17 Bob Duff <duff@adacore.com>
+
+ * libgnat/s-bituti.adb (Get_Val_2, Set_Val_2): Use new routines
+ for getting and setting a Val_2, avoiding touching the second
+ half when that half might not exist.
+ * exp_ch5.adb (Expand_Assign_Array_Loop_Or_Bitfield): Correct
+ tests for potential volatile or independent components. In
+ particular, do not call Prefix unless we know it's a slice.
+
+2019-09-17 Dmitriy Anisimkov <anisimko@adacore.com>
+
+ * gsocket.h: Include sys/un.h.
+ * s-oscons-tmplt.c (AF_UNIX): New constant generation.
+ (SIZEOF_sockaddr_un): Idem.
+ * libgnat/g-socket.ads (Family_Type): New value Family_Unix
+ added.
+ (Family_Inet_4_6): New subtype only for network families.
+ (Sock_Addr_Type): Add Unbounded_String field for Family_Unix
+ variant.
+ (Unix_Socket_Address): Create Sock_Addr_Type from socket
+ pathname.
+ (Network_Socket_Address): Create Sock_Addr_Type from
+ Inet_Addr_Type and Port_Type parameters.
+ * libgnat/g-socket.adb: Support local unix address in socket
+ routines.
+ (Get_Address_Info): Disable warning about Result may be
+ referenced before it has a value. Remove duplicated code to exit
+ from Look_For_Supported.
+ * libgnat/g-sothco.ads (Unix_Name_Length): New constant defining
+ maximum number of characters in local socket address path.
+ (Sockaddr): Add variant for Family_Unix address family. Move
+ Sin_Port and Sin_Family to Family_Inet section. Add Sin6_Port
+ and Sin6_Family to Family_Inet6 section.
+ (Set_Address): Add out parameter Length to return valuable
+ Sockaddr data length.
+ (Get_Address): Add input parameter Length to set valuable
+ Sockaddr data length.
+ * libgnat/g-sothco.adb: Support local unix address in socket
+ routines.
+
+2019-09-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_attr.adb (Expand_Size_Attribute): Chain the special cases
+ on the back-end path and rewrite the attribute appled to slices
+ of bit-packed arrays into the product of the Length and the
+ Compoent_Size attributes of the slices.
+ * exp_ch5.adb (Expand_Assign_Array_Bitfield): Use Size attribute
+ directly to compute the bitfield's size.
+
+2019-09-17 Bob Duff <duff@adacore.com>
+
+ * exp_ch5.adb (Expand_Assign_Array_Loop_Or_Bitfield): Add tests
+ for potential volatile or independent components.
+ * libgnat/s-bituti.adb (Copy_Small_Bitfield,
+ Copy_Large_Bitfield): Move declarations to more appropriate
+ place.
+
+2019-09-13 Maciej W. Rozycki <macro@wdc.com>
+
+ * make.adb (Scan_Make_Arg): Also accept `--sysroot=' for the
+ compiler and the linker.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (maybe_saturate_size): New function.
+ (gnat_to_gnu_entity): Invoke it on the Esize of types before sending
+ it for back-annotations.
+ * gcc-interface/trans.c: Fix typo.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/ada-tree.h (DECL_FORCED_BY_REF_P): New macro.
+ * gcc-interface/decl.c (gnat_to_gnu_param): Set it on parameters
+ whose mechanism was forced to by-reference.
+ * gcc-interface/trans.c (Call_to_gnu): Do not issue a warning about a
+ misaligned actual parameter if it is based on a CONSTRUCTOR. Remove
+ obsolete warning for users of Starlet. Issue a warning if a temporary
+ is make around the call for a parameter with DECL_FORCED_BY_REF_P set.
+ (addressable_p): Return true for REAL_CST and ADDR_EXPR.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gnat_to_gnu): Do not set the location on an
+ expression used for a tag.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/gigi.h (aggregate_type_contains_array_p): Declare.
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: For an
+ extension, test Has_Record_Rep_Clause instead of Has_Specified_Layout.
+ (adjust_packed): Return 0 if the type of the field is an aggregate
+ type that contains (or is) a self-referential array.
+ (type_has_variable_size): Delete.
+ * gcc-interface/utils.c (inish_record_type): Constify a variable.
+ (aggregate_type_contains_array_p): Add parameter SELF_REFERENTIAL.
+ <RECORD_TYPE>: Pass it in the recursive call.
+ <ARRAY_TYPE>: If it is true, return true only if the array type is
+ self-referential.
+ (create_field_decl): Streamline the setting of the alignment on the
+ field. Pass false to aggregate_type_contains_array_p.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (lvalue_required_p) <N_Slice>: Adjust GNU_TYPE
+ in the recursive call.
+ <N_Selected_Component>: Likewise.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (build_template): Deal with parameters
+ passed by pointer to component of multi-dimensional arrays.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (annotate_value) <CALL_EXPR>: Inline the call
+ also if List_Representation_Info is greater than 3.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Size>: Add assertion.
+
+2019-08-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/gigi.h (gigi_checking_assert): New macro.
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
+ Remove redundant test and adjust comments. Minor tweaks.
+ * gcc-interface/trans.c (Call_to_gnu): Do not generate range checks,
+ instead assert that the Do_Range_Check flag is not set. Adjust call
+ to convert_with_check.
+ (gnat_to_gnu): Likewise.
+ (assoc_to_constructor): Likewise.
+ (pos_to_constructor): Likewise. Remove GNAT_COMPONENT_TYPE parameter.
+ (emit_range_check): Delete.
+ (convert_with_check): Remove RANGE_P parameter and adjust. Do a single
+ overflow check for modular types.
+
+2019-08-23 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/91283
+ * gcc-interface/misc.c (gnat_post_options): Set flag_excess_precision
+ instead of flag_excess_precision_cmdline.
+
+2019-08-21 Vadim Godunko <godunko@adacore.com>
+
+ * libgnat/g-expect.adb (Expect_Internal): Attempt to read
+ several times when 'read' returns non-positive.
+
+2019-08-21 Piotr Trojanek <trojanek@adacore.com>
+
+ * einfo.adb (Is_Discriminal): Remove extra parens.
+ (Is_Constant_Object): Simplify by reusing Ekind_In.
+ (Is_Prival): Remove extra parens.
+ * checks.adb, exp_ch4.adb, sem_ch3.adb, sem_spark.adb: Minor
+ reformattings.
+
+2019-08-21 Claire Dross <dross@adacore.com>
+
+ * libgnat/a-cofove.ads (Vector): Add an Iterable aspect to allow
+ iteration.
+ (Iter_First, Iter_Next): Primitives used for iteration.
+
+2019-08-21 Yannick Moy <moy@adacore.com>
+
+ * sem_ch3.adb (Analyze_Subtype_Declaration): Inherit RM_Size
+ field for formal type parameters in generic instantiations.
+