deprecate += and friends for bool and enum (#10336)

* fixes #10257
* add version to deprecation
This commit is contained in:
Arne Döring
2019-01-18 14:36:38 +01:00
committed by Andreas Rumpf
parent 6fb618da4b
commit 8399e0f78a

View File

@@ -3886,15 +3886,21 @@ proc gorgeEx*(command: string, input = "", cache = ""): tuple[output: string,
## Same as `gorge` but also returns the precious exit code.
discard
proc `+=`*[T: SomeOrdinal|uint|uint64](x: var T, y: T) {.
proc `+=`*[T: SomeInteger](x: var T, y: T) {.
magic: "Inc", noSideEffect.}
## Increments an ordinal
## Increments an integer
proc `-=`*[T: SomeOrdinal|uint|uint64](x: var T, y: T) {.
proc `+=`*[T: enum|bool](x: var T, y: T) {.
magic: "Inc", noSideEffect, deprecated: "use `inc` instead".}
proc `-=`*[T: SomeInteger](x: var T, y: T) {.
magic: "Dec", noSideEffect.}
## Decrements an ordinal
proc `*=`*[T: SomeOrdinal|uint|uint64](x: var T, y: T) {.
proc `-=`*[T: enum|bool](x: var T, y: T) {.
magic: "Dec", noSideEffect, deprecated: "0.20.0, use `dec` instead".}
proc `*=`*[T: SomeInteger](x: var T, y: T) {.
inline, noSideEffect.} =
## Binary `*=` operator for ordinals
x = x * y