mirror of
https://github.com/nim-lang/Nim.git
synced 2026-06-01 17:41:17 +00:00
fixing bootstrapping when stack frames are enabled
This commit is contained in:
@@ -402,9 +402,6 @@ proc `+` *(x, y: int32): int32 {.magic: "AddI", noSideEffect.}
|
||||
proc `+` *(x, y: int64): int64 {.magic: "AddI64", noSideEffect.}
|
||||
## Binary `+` operator for an integer.
|
||||
|
||||
proc `+=`*[T](x, y: ordinal[T]) {.magic: "Inc", noSideEffect.}
|
||||
## Increments an ordinal
|
||||
|
||||
proc `-` *(x, y: int): int {.magic: "SubI", noSideEffect.}
|
||||
proc `-` *(x, y: int8): int8 {.magic: "SubI", noSideEffect.}
|
||||
proc `-` *(x, y: int16): int16 {.magic: "SubI", noSideEffect.}
|
||||
@@ -412,9 +409,6 @@ proc `-` *(x, y: int32): int32 {.magic: "SubI", noSideEffect.}
|
||||
proc `-` *(x, y: int64): int64 {.magic: "SubI64", noSideEffect.}
|
||||
## Binary `-` operator for an integer.
|
||||
|
||||
proc `-=`*[T](x, y: ordinal[T]) {.magic: "Dec", noSideEffect.}
|
||||
## Decrements an ordinal
|
||||
|
||||
proc `*` *(x, y: int): int {.magic: "MulI", noSideEffect.}
|
||||
proc `*` *(x, y: int8): int8 {.magic: "MulI", noSideEffect.}
|
||||
proc `*` *(x, y: int16): int16 {.magic: "MulI", noSideEffect.}
|
||||
@@ -422,10 +416,6 @@ proc `*` *(x, y: int32): int32 {.magic: "MulI", noSideEffect.}
|
||||
proc `*` *(x, y: int64): int64 {.magic: "MulI64", noSideEffect.}
|
||||
## Binary `*` operator for an integer.
|
||||
|
||||
proc `*=`*[T](x: var ordinal[T], y: ordinal[T]) {.inline noSideEffect.} =
|
||||
## Binary `*=` operator for oridinals
|
||||
x = x * y
|
||||
|
||||
proc `div` *(x, y: int): int {.magic: "DivI", noSideEffect.}
|
||||
proc `div` *(x, y: int8): int8 {.magic: "DivI", noSideEffect.}
|
||||
proc `div` *(x, y: int16): int16 {.magic: "DivI", noSideEffect.}
|
||||
@@ -579,22 +569,6 @@ proc `*` *(x, y: float): float {.magic: "MulF64", noSideEffect.}
|
||||
proc `/` *(x, y: float): float {.magic: "DivF64", noSideEffect.}
|
||||
## computes the floating point division
|
||||
|
||||
proc `+=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Increments in placee a floating point number
|
||||
x = x + y
|
||||
|
||||
proc `-=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Decrements in place a floating point number
|
||||
x = x - y
|
||||
|
||||
proc `*=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Multiplies in place a floating point number
|
||||
x = x * y
|
||||
|
||||
proc `/=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Divides in place a floating point number
|
||||
x = x / y
|
||||
|
||||
proc `==` *(x, y: float): bool {.magic: "EqF64", noSideEffect.}
|
||||
proc `<=` *(x, y: float): bool {.magic: "LeF64", noSideEffect.}
|
||||
proc `<` *(x, y: float): bool {.magic: "LtF64", noSideEffect.}
|
||||
@@ -743,8 +717,6 @@ proc `&` * (x: char, y: string): string {.
|
||||
proc add*(x: var string, y: char) {.magic: "AppendStrCh", noSideEffect.}
|
||||
proc add*(x: var string, y: string) {.magic: "AppendStrStr", noSideEffect.}
|
||||
|
||||
proc `&=`* (x: var string, y: string) {.magic: "AppendStrStr", noSideEffect.}
|
||||
|
||||
type
|
||||
TEndian* = enum ## is a type describing the endianness of a processor.
|
||||
littleEndian, bigEndian
|
||||
@@ -2062,3 +2034,31 @@ proc slurp*(filename: string): string {.magic: "Slurp".}
|
||||
## const myResource = slurp"mydatafile.bin"
|
||||
##
|
||||
|
||||
proc `+=`*[T](x, y: ordinal[T]) {.magic: "Inc", noSideEffect.}
|
||||
## Increments an ordinal
|
||||
|
||||
proc `-=`*[T](x, y: ordinal[T]) {.magic: "Dec", noSideEffect.}
|
||||
## Decrements an ordinal
|
||||
|
||||
proc `*=`*[T](x: var ordinal[T], y: ordinal[T]) {.inline noSideEffect.} =
|
||||
## Binary `*=` operator for oridinals
|
||||
x = x * y
|
||||
|
||||
proc `+=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Increments in placee a floating point number
|
||||
x = x + y
|
||||
|
||||
proc `-=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Decrements in place a floating point number
|
||||
x = x - y
|
||||
|
||||
proc `*=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Multiplies in place a floating point number
|
||||
x = x * y
|
||||
|
||||
proc `/=` *(x: var float, y:float) {.inline noSideEffect.} =
|
||||
## Divides in place a floating point number
|
||||
x = x / y
|
||||
|
||||
proc `&=`* (x: var string, y: string) {.magic: "AppendStrStr", noSideEffect.}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user