* Error -> Defect for defects The distinction between Error and Defect is subjective, context-dependent and somewhat arbitrary, so when looking at an exception, it's hard to guess what it is - this happens often when looking at a `raises` list _without_ opening the corresponding definition and digging through layers of inheritance. With the help of a little consistency in naming, it's at least possible to start disentangling the two error types and the standard lib can set a good example here.
7 lines
179 B
Nim
7 lines
179 B
Nim
discard """
|
|
outputsub: "Error: unhandled exception: over- or underflow [OverflowDefect]"
|
|
exitcode: "1"
|
|
"""
|
|
var a : int32 = 2147483647
|
|
var b : int32 = 2147483647
|
|
var c = a + b
|