catchable defects (#13626)
* allow defects to be caught even for --exceptions:goto (WIP) * implemented the new --panics:on|off switch; refs https://github.com/nim-lang/RFCs/issues/180 * new implementation for integer overflow checking * produce a warning if a user-defined exception type inherits from Exception directly * applied Timothee's suggestions; improved the documentation and replace the term 'checked runtime check' by 'panic' * fixes #13627 * don't inherit from Exception directly
This commit is contained in:
parent
14b2354b7d
commit
a6682de004
35 changed files with 441 additions and 142 deletions
|
|
@ -79,7 +79,7 @@ template decTypeSize(cell, t) =
|
|||
if t.kind in {tyString, tySequence}:
|
||||
let cap = cast[PGenericSeq](cellToUsr(cell)).space
|
||||
let size = if t.kind == tyString: cap+1+GenericSeqSize
|
||||
else: addInt(mulInt(cap, t.base.size), GenericSeqSize)
|
||||
else: cap * t.base.size + GenericSeqSize
|
||||
atomicDec t.sizes, size+sizeof(Cell)
|
||||
else:
|
||||
atomicDec t.sizes, t.base.size+sizeof(Cell)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue