!ASIS Issue #057 !topic Storage_Error as the name used for Asis error status !reference ASIS 95-4.1 !from Sergey Rybin !keywords Error_Kinds, Storage_Error !discussion Consider the definition of Storage_Error in Asis.Errors.Error_Kinds: ------------------------------------------------------------------------------ -- Section 4.1 type Error_Kinds ------------------------------------------------------------------------------ -- This enumeration type describes the various kinds of errors. -- type Error_Kinds is ( Not_An_Error, -- No error is presently recorded Value_Error, -- Routine argument value invalid Initialization_Error, -- ASIS is uninitialized Environment_Error, -- ASIS could not initialize Parameter_Error, -- Bad Parameter given to Initialize Capacity_Error, -- Implementation overloaded Name_Error, -- Context/unit not found Use_Error, -- Context/unit not use/open-able Data_Error, -- Context/unit bad/invalid/corrupt Text_Error, -- The program text cannot be located Storage_Error, -- Storage_Error suppressed Obsolete_Reference_Error, -- Argument or result is invalid due to -- and inconsistent compilation unit Unhandled_Exception_Error, -- Unexpected exception suppressed Not_Implemented_Error, -- Functionality not implemented Internal_Error); -- Implementation internal failure I am afraid, that the fact, that the name of the ASIS error status is the same as the name of the related predefined exception may lead to some confusions in an application code. An application could never use the simple name "Storage_Error" as the name of the ASIS error status because of the clash with the name of the predefined exception, whereas all the other names defining ASIS error statuses can be used as simple names. It is not a big deal, but, may be, somebody have a simple idea how to avoid this name clash? (Shame on me, I do not have the better name for Asis.Errors.Error_Kinds (Storage_Error) (or Asis.Errors.Storage_Error? :) ) !resolution Rejected. !date 97-03-26 !Notes It is best to use fully dot-qualified names for readability. Also, this is an enumeration value, not an exception name.