Delete_Field (Field3 (Node));
Delete_Field (Field4 (Node));
Delete_Field (Field5 (Node));
+
+ -- ??? According to spec, Node itself should be deleted as well
end Delete_Tree;
-----------
or else Nkind (N) = N_Subprogram_Body
or else Nkind (N) = N_Package_Body
then
- Kill_Dead_Code
- (Declarations (N), False);
- Kill_Dead_Code
- (Statements (Handled_Statement_Sequence (N)));
+ Kill_Dead_Code (Declarations (N), False);
+ Kill_Dead_Code (Statements (Handled_Statement_Sequence (N)));
if Nkind (N) = N_Subprogram_Body then
Set_Is_Eliminated (Defining_Entity (N));
Kill_Dead_Code (Visible_Declarations (Specification (N)));
Kill_Dead_Code (Private_Declarations (Specification (N)));
+ -- ??? After this point, Delete_Tree has been called on all
+ -- declarations in Specification (N), so references to
+ -- entities therein look suspicious.
+
declare
E : Entity_Id := First_Entity (Defining_Entity (N));
begin
MSG_OOB : constant := 1; -- Process out-of-band data
MSG_PEEK : constant := 2; -- Peek at incoming data
MSG_EOR : constant := 8; -- Send end of record
- MSG_WAITALL : constant := 64; -- Wait for full reception
+ MSG_WAITALL : constant := 128; -- Wait for full reception
MSG_NOSIGNAL : constant := -1; -- No SIGPIPE on send
MSG_Forced_Flags : constant := 0;
-- Flags set on all send(2) calls
/* This program generates g-soccon.ads */
-/* To build using DEC C:
- CC/DEFINE="TARGET=""OpenVMS""" gen-soccon
- LINK gen-soccon
- RUN gen-soccon
-*/
+/*
+ * To build using DEC C:
+ *
+ * CC/DEFINE="TARGET=""OpenVMS""" gen-soccon
+ * LINK gen-soccon
+ * RUN gen-soccon
+ *
+ * Note: OpenVMS versions older than 8.3 provide an incorrect value in
+ * the DEC C header files for MSG_WAITALL. To generate the VMS version
+ * of g-soccon.ads, gen-soccon should be run on an 8.3 or later machine.
+ */
#ifndef TARGET
# error Please define TARGET