(j3.2006) when does an error condition occur in executing EXECUTE_COMMAND_LINE

Michael Ingrassia michaeli
Fri Jan 16 14:05:12 EST 2009


> My inclination is to intentionally 
>not specify what errors can or cannot be detected.

Ok, but we can and should add value to the standard by making it possible
for as many errors as possible to be error conditions, right?

The distinction is that once an error occurs, all bets are off and the
program can do anything; but the standard can prescribe what happens
for error conditions (e.g., you lose the guarantee that something actually
got allocated but if you set the STAT variable then execution does not
terminate, etc.)

Say you call EXECUTE_COMMAND_LINE and the command doesn't execute.
The standard says it does, so you're in error territory and nothing else
about your program execution is guaranteed by the standard.   But if
command not executing is an error condition, maybe CMDSTAT or EXITSTAT
could be set and the program and processor could still be standard-conforming.

I thought that's what we wanted, and if so I still think 
some of the language in the standard is not quite right.   

The standard shouldn't say "a command will be executed" -- that makes it an
error if a command isn't executed whereas some OS's can do better (can detect
some errors).

The standard should say "unless an error condition occurs, a command will
be executed" -- that permits (but does not require) an error condition to
be detected if a command isn't executed.    

And we could also say "which errors, if any, are detected is processor 
dependent".


	--Michael I.



More information about the J3 mailing list