mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-04-29 08:52:15 +00:00
Fix implicit string to bool conversion (#567)
This commit is contained in:
parent
85de20c4fc
commit
abf3de9076
@ -141,6 +141,11 @@ export class String {
|
|||||||
return !compareUnsafe(left, 0, right, 0, leftLength);
|
return !compareUnsafe(left, 0, right, 0, leftLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@operator.prefix("!")
|
||||||
|
private static __not(str: String): bool {
|
||||||
|
return str === null || !str.length;
|
||||||
|
}
|
||||||
|
|
||||||
@operator("!=")
|
@operator("!=")
|
||||||
private static __ne(left: String, right: String): bool {
|
private static __ne(left: String, right: String): bool {
|
||||||
return !this.__eq(left, right);
|
return !this.__eq(left, right);
|
||||||
|
@ -2348,7 +2348,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 2072
|
i32.const 2072
|
||||||
i32.const 249
|
i32.const 254
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -3525,7 +3525,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 2072
|
i32.const 2072
|
||||||
i32.const 249
|
i32.const 254
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -115,7 +115,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 16
|
i32.const 16
|
||||||
i32.const 224
|
i32.const 229
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -199,7 +199,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 16
|
i32.const 16
|
||||||
i32.const 224
|
i32.const 229
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -6238,7 +6238,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 4056
|
i32.const 4056
|
||||||
i32.const 249
|
i32.const 254
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -11617,7 +11617,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 4056
|
i32.const 4056
|
||||||
i32.const 249
|
i32.const 254
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -1525,7 +1525,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 507
|
i32.const 512
|
||||||
i32.const 8
|
i32.const 8
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
@ -1572,7 +1572,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 511
|
i32.const 516
|
||||||
i32.const 8
|
i32.const 8
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
@ -1651,7 +1651,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 523
|
i32.const 528
|
||||||
i32.const 8
|
i32.const 8
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
@ -1706,7 +1706,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 532
|
i32.const 537
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
@ -2008,7 +2008,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 507
|
i32.const 512
|
||||||
i32.const 8
|
i32.const 8
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
@ -2062,7 +2062,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 511
|
i32.const 516
|
||||||
i32.const 8
|
i32.const 8
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
@ -2157,7 +2157,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 523
|
i32.const 528
|
||||||
i32.const 8
|
i32.const 8
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
@ -2220,7 +2220,7 @@
|
|||||||
if
|
if
|
||||||
i32.const 0
|
i32.const 0
|
||||||
i32.const 72
|
i32.const 72
|
||||||
i32.const 532
|
i32.const 537
|
||||||
i32.const 4
|
i32.const 4
|
||||||
call $~lib/env/abort
|
call $~lib/env/abort
|
||||||
unreachable
|
unreachable
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -18,6 +18,10 @@ assert(changetype<usize>(str) == changetype<usize>("hi, I'm a string"));
|
|||||||
assert(str.length == 16);
|
assert(str.length == 16);
|
||||||
assert(str.charCodeAt(0) == 0x68);
|
assert(str.charCodeAt(0) == 0x68);
|
||||||
|
|
||||||
|
assert(!!"" == false);
|
||||||
|
assert(!!"\0" == true);
|
||||||
|
assert(!!"a" == true);
|
||||||
|
|
||||||
assert(String.fromCharCode(0) == "\0");
|
assert(String.fromCharCode(0) == "\0");
|
||||||
assert(String.fromCharCode(54) == "6");
|
assert(String.fromCharCode(54) == "6");
|
||||||
assert(String.fromCharCode(0x10000 + 54) == "6");
|
assert(String.fromCharCode(0x10000 + 54) == "6");
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user