Undefined behaviour in C [was Re: The Cost of Dynamism]
Terry Reedy
tjreedy at udel.edu
Sat Mar 26 16:44:41 EDT 2016
More information about the Python-list mailing list
Sat Mar 26 16:44:41 EDT 2016
- Previous message (by thread): Undefined behaviour in C [was Re: The Cost of Dynamism]
- Next message (by thread): Undefined behaviour in C [was Re: The Cost of Dynamism]
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 3/26/2016 1:43 PM, Rustom Mody wrote: > There is this nice piece of OO called the exception hierarchy: > https://docs.python.org/2/library/exceptions.html#exception-hierarchy https://docs.python.org/3/library/exceptions.html#exception-hierarchy > BaseException ⊇ Exception ⊇ EnvironmentError ⊇ IOError BaseException ⊇ Exception ⊇ ⊇ OSError > At this point it would have been completely natural for IOError to continue > subclassing to all the typical errors > - File not found > - No Space left on device Which is why we now have +-- OSError | +-- BlockingIOError | +-- ChildProcessError | +-- ConnectionError | | +-- BrokenPipeError | | +-- ConnectionAbortedError | | +-- ConnectionRefusedError | | +-- ConnectionResetError | +-- FileExistsError | +-- FileNotFoundError | +-- InterruptedError | +-- IsADirectoryError | +-- NotADirectoryError | +-- PermissionError | +-- ProcessLookupError | +-- TimeoutError 'no space' is MemoryError, but that is a hardward, not OS matter. > But instead we have an integer errno and we must inquire what that is to > figure out what the exact IOError was This statement is obsolete, but explains why the above was added in 3.3. -- Terry Jan Reedy
- Previous message (by thread): Undefined behaviour in C [was Re: The Cost of Dynamism]
- Next message (by thread): Undefined behaviour in C [was Re: The Cost of Dynamism]
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list