+2012-10-29 Robert Dewar <dewar@adacore.com>
+
+ * s-bignum.adb: Minor comment change.
+
+2012-10-29 Thomas Quinot <quinot@adacore.com>
+
+ * s-oscons-tmplt.c: Fix signedness of ioctl request identifiers
+ for x86_64-freebsd.
+
+2012-10-29 Yannick Moy <moy@adacore.com>
+
+ * exp_alfa.adb (Expand_Alfa): Remove qualification of names.
+
2012-10-29 Robert Dewar <dewar@adacore.com>
* sem_prag.adb: Minor reformatting.
with Exp_Attr; use Exp_Attr;
with Exp_Ch4; use Exp_Ch4;
with Exp_Ch6; use Exp_Ch6;
-with Exp_Dbug; use Exp_Dbug;
with Exp_Util; use Exp_Util;
with Nlists; use Nlists;
with Rtsfind; use Rtsfind;
when N_Attribute_Reference =>
Expand_Alfa_N_Attribute_Reference (N);
+ -- Note: we use to qualify entity names in the following constructs
+ -- (as full expansion does), but this was removed as this prevents
+ -- the verification back-end from using a short name for debugging
+ -- and user interaction. The verification back-end already takes
+ -- care of qualifying names when needed
+
when N_Block_Statement |
N_Package_Body |
N_Package_Declaration |
N_Subprogram_Body =>
- Qualify_Entity_Names (N);
+ null;
when N_Subprogram_Call =>
Expand_Alfa_Call (N);
when N_In =>
Expand_Alfa_N_In (N);
+ -- A NOT IN B gets transformed to NOT (A IN B). This is the same
+ -- expansion used in the normal case, so shared the code.
+
when N_Not_In =>
Expand_N_Not_In (N);
when N_Simple_Return_Statement =>
Expand_Alfa_N_Simple_Return_Statement (N);
+ -- In Alfa mode, no other constructs require expansion
+
when others =>
null;
end case;
-- Expose a writable view of discriminant BD.Len so that we can
-- initialize it. We need to use the exact layout of the record
- -- for the overlay to shield ourselves from endianness issues.
+ -- to ensure that the Length field has 24 bits as expected.
type Bignum_Data_Header is record
Len : Length;
#define CST(name,comment) C(#name,String,name,comment)
+/* ioctl(2) requests are "int" in UNIX, but "unsigned long" on FreeBSD */
+
+#ifdef __FreeBSD__
+# define CNI CNU
+#else
+# define CNI CND
+#endif
+
#define STR(x) STR1(x)
#define STR1(x) #x
#ifndef FIONBIO
# define FIONBIO -1
#endif
-CND(FIONBIO, "Set/clear non-blocking io")
+CNI(FIONBIO, "Set/clear non-blocking io")
#ifndef FIONREAD
# define FIONREAD -1
#endif
-CND(FIONREAD, "How many bytes to read")
+CNI(FIONREAD, "How many bytes to read")
/*
#define SIZEOF_sigset (sizeof (sigset_t))
CND(SIZEOF_sigset, "sigset");
#endif
+
/*
-- Fields of struct msghdr
/* There's no clock_gettime or clock_id's on Darwin, generate a dummy value */
# define CLOCK_RT_Ada "-1"
-#elif defined(FreeBSD) || defined(_AIX)
+#elif defined(__FreeBSD__) || defined(_AIX)
/** On these platforms use system provided monotonic clock instead of
** the default CLOCK_REALTIME. We then need to set up cond var attributes
** appropriately (see thread.c).