CVS difference for ai12s/ai12-0092-1.txt

Differences between 1.5 and version 1.6
Log of other versions for file ai12s/ai12-0092-1.txt

--- ai12s/ai12-0092-1.txt	2014/10/14 04:10:36	1.5
+++ ai12s/ai12-0092-1.txt	2014/11/13 04:00:55	1.6
@@ -6059,3 +6059,112 @@
 Standard reflect that intent even if it not really enforceable.
 
 ***************************************************************
+
+From: Tullio Vardanega
+Sent: Tuesday, October 14, 2014  2:34 AM
+
+> suppressible Legality Rule
+This formulation makes sense to me.
+
+***************************************************************
+
+From: Bob Duff
+Sent: Tuesday, October 14, 2014  4:00 PM
+
+> > So I thought "soft" was the final decision.
+> 
+> No, that was from the original placeholder AI (which was based on 
+> e-mail discussion). When we talked about it in a meeting afterwards 
+> (Pittsburgh - you were there), we decided on "suppressible error", I 
+> think because that suggests the default direction (detected by 
+> default). I didn't update the AI afterwards because I thought your were
+> going to do it soon.
+
+OK, I don't remember the Pittsburgh discussion.
+
+> > I read through the entire !appendix, and there were positive notes 
+> > about "soft".
+> > Many folks like "suppressible", but to me that might imply 
+> > suppressing the diagnostic message, which is exactly the opposite of 
+> > what we're trying to do.
+> 
+> Opposite how? The idea is that these are errors that usually prevent 
+> the partition from running (at least WRT to the Standard). If one 
+> suppresses them, you can run the partition. And surely there would be 
+> no message in the latter case (there's no point in forcing a separate 
+> suppression of the message, as most projects want to be warning clean 
+> as well as error clean, requiring people to write two suppression 
+> pragmas and/or options would be silly).
+
+That's not what I intended, and not what the AI says -- it says that violation
+of any legality rule (hard or soft) requires a diagnostic message.  And it
+goes without saying that implementations can have nonstandard modes that
+suppress such messages (like pragma Warnings(Off) in GNAT).
+
+I think I still like the idea of two suppression pragmas/switches (one to
+allow the program to run, and the other to suppress the message).
+But maybe I could be convinced otherwise.
+
+Anyway, if your semantics prevails, then "suppressible" makes more sense.
+
+> Obviously, in the case where they are suppressed there has to be 
+> well-defined semantics (which might be erroneous in some cases) so 
+> whatever happens when they are run makes sense.
+
+Yes (although obviously we'll try hard not to say "erroneous").
+
+>...But I don't see any value to a
+> nagging message after explicit suppression, and surely no value to
+> *requiring* that (that's up to implementers, if they have customers 
+>that  find an intermediate mode useful).
+
+Good point.  In other words, as I like to say, the RM doesn't require anybody
+to do anything -- if an implementer doesn't like what it says, they can
+implement nonstandard modes that do something else.
+
+> P.S. Yes, I saw your comments on "error", and I agree that you're 
+> right about that. So probably we're talking "suppressible Legality 
+> Rule" or something like that.
+
+OK with me, especially if the semantics really is to suppress the messages.
+
+> P.P.S. And of course I understand Robert's contention that the Ada 
+> standard can't really specify the default behavior; I think it 
+> important that the Standard reflect that intent even if it not really
+> enforceable.
+
+I agree with Robert's formal point, but I also agree with you that the RM
+can/should be worded in a way that implies, "This is the normal thing, but
+then you can also do the other thing."  Pragma Suppress is worded like that.
+And (with the minor exception of Overflow_Check), GNAT has checks turned on by
+default, as you might guess from reading the RM.
+
+***************************************************************
+
+From: Randy Brukardt
+Sent: Wednesday, November 12, 2014  9:40 PM
+
+...
+> > > So I thought "soft" was the final decision.
+> > 
+> > No, that was from the original placeholder AI (which was based on 
+> > e-mail discussion). When we talked about it in a meeting afterwards 
+> > (Pittsburgh - you were there), we decided on "suppressible error", I 
+> > think because that suggests the default direction (detected by 
+> > default). I didn't update the AI afterwards because I thought your 
+> > were going to do it soon.
+> 
+> OK, I don't remember the Pittsburgh discussion.
+
+That's why we have the super-secret thing called "meeting minutes". :-)
+
+Seriously, it's expected that AI authors refer to the most recent discussion
+in the minutes; it's linked directly from the AI number in the HTML version of
+the homework list in the most recent minutes, even if that discussion is not
+from the most recent meeting. I know you're not a big fan of HTML, but there's
+a reason that I spend 4 hours or so after every meeting making a nicely
+cross-linked minutes file, and why I give out HTML links to each person's
+homework.
+
+***************************************************************
+ 
\ No newline at end of file

Questions? Ask the ACAA Technical Agent