compiler: implement negate for complex numbers

This commit is contained in:
Ayke van Laethem
2020-10-28 00:49:13 +01:00
committed by Ron Evans
parent ffeff55706
commit 3e40b08ba0
3 changed files with 15 additions and 1 deletions
+3 -1
View File
@@ -57,15 +57,17 @@ func main() {
println(complex64(c128))
println(complex128(c64))
// binops on complex numbers
// binops and negate on complex numbers
c64 = 5 + 2i
println("complex64 add: ", c64+-3+8i)
println("complex64 sub: ", c64 - -3 + 8i)
println("complex64 mul: ", c64*-3+8i)
println("complex64 div: ", c64/-3+8i)
println("complex64 neg: ", -c64)
c128 = -5 + 2i
println("complex128 add:", c128+2+6i)
println("complex128 sub:", c128-2+6i)
println("complex128 mul:", c128*2+6i)
println("complex128 div:", c128/2+6i)
println("complex128 neg:", -c128)
}
+2
View File
@@ -27,7 +27,9 @@ complex64 add: (+2.000000e+000+1.000000e+001i)
complex64 sub: (+8.000000e+000+1.000000e+001i)
complex64 mul: (-1.500000e+001+2.000000e+000i)
complex64 div: (-1.666667e+000+7.333333e+000i)
complex64 neg: (-5.000000e+000-2.000000e+000i)
complex128 add: (-3.000000e+000+8.000000e+000i)
complex128 sub: (-7.000000e+000+8.000000e+000i)
complex128 mul: (-1.000000e+001+1.000000e+001i)
complex128 div: (-2.500000e+000+7.000000e+000i)
complex128 neg: (+5.000000e+000-2.000000e+000i)