CVS difference for ai12s/ai12-0024-1.txt
--- ai12s/ai12-0024-1.txt 2012/05/03 04:17:32 1.1
+++ ai12s/ai12-0024-1.txt 2012/05/19 02:42:48 1.2
@@ -4,7 +4,7 @@
!status received 12-02-12
+!subject Compile-time detection of range and length errors
@@ -35,7 +35,7 @@
statement that is statically unevaluated, an expression containing any of
the following is illegal:
-* If the left operand of an integer divide operator is a static value that
+* If the right operand of an integer divide operator is a static value that
* A subtype conversion of a static value to a static subtype if the value
does not satisfy the subtype;
@@ -78,8 +78,8 @@
is unlikely to be difficult.
Still, this problem is not as clear-cut as it appears on the surface. There
-would be a significant problem with false positives with the simple version
-of these rules.
+would be a significant problem with false positives with "obvious" version
+of these rules (where any out-of-range static value is an error).
@@ -132,7 +132,7 @@
call that returns that result, the aggregate again becomes illegal.
These false positives mean that this proposal is incompatible. It's mostly
-incompatible for programs that uses these sorts of errors to raise exceptions,
+incompatible for programs that use these sorts of errors to raise exceptions,
a lousy technique that we can do without. But there also will be cases where
some code which cannot be executed because of complex runtime expressions that
raises an exception. Those cases would present more of a problem.
@@ -140,7 +140,7 @@
An alternative to making the program illegal would be to define a sort of
"soft error" that can be ignored via a pragma. A program containing such
an error is illegal unless the pragma applies to the site of the soft error.
-(One of the options for return statements in functions - AI12-0030-1 has a
+(One of the options for return statements in functions - AI12-0029-1 has a
similar requirement, so one could use the mechanism in a variety of places;
it wouldn't make sense to define it just for this problem.)
Questions? Ask the ACAA Technical Agent