patch 9.0.0491: no good reason to build without the float feature
Problem: No good reason to build without the float feature.
Solution: Remove configure check for float and "#ifdef FEAT_FLOAT".
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index 9bb053f..44e221a 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -18,9 +18,7 @@
assert_equal('one', 1 ?
'one' :
'two')
- if has('float')
- assert_equal('one', !!0.1 ? 'one' : 'two')
- endif
+ assert_equal('one', !!0.1 ? 'one' : 'two')
assert_equal('one', !!'x' ? 'one' : 'two')
assert_equal('one', !!'x'
? 'one'
@@ -33,9 +31,7 @@
assert_equal('two', false ? 'one' : 'two')
assert_equal('two', 0 ? 'one' : 'two')
- if has('float')
- assert_equal('two', !!0.0 ? 'one' : 'two')
- endif
+ assert_equal('two', !!0.0 ? 'one' : 'two')
assert_equal('two', !!'' ? 'one' : 'two')
assert_equal('two', !!0z ? 'one' : 'two')
assert_equal('two', !![] ? 'one' : 'two')
@@ -208,9 +204,7 @@
call v9.CheckDefExecAndScriptFailure(["var x = true ? xxx : 'foo'"], ['E1001:', 'E121:'], 1)
call v9.CheckDefExecAndScriptFailure(["var x = false ? 'foo' : xxx"], ['E1001:', 'E121:'], 1)
- if has('float')
- call v9.CheckDefAndScriptFailure(["var x = 0.1 ? 'one' : 'two'"], 'E805:', 1)
- endif
+ call v9.CheckDefAndScriptFailure(["var x = 0.1 ? 'one' : 'two'"], 'E805:', 1)
" missing argument detected even when common type is used
call v9.CheckDefAndScriptFailure([
@@ -227,18 +221,14 @@
assert_equal('yes', 'yes' ?? 456)
assert_equal([1], [1] ?? 456)
assert_equal({one: 1}, {one: 1} ?? 456)
- if has('float')
- assert_equal(0.1, 0.1 ?? 456)
- endif
+ assert_equal(0.1, 0.1 ?? 456)
assert_equal(456, v:false ?? 456)
assert_equal(456, 0 ?? 456)
assert_equal(456, '' ?? 456)
assert_equal(456, [] ?? 456)
assert_equal(456, {} ?? 456)
- if has('float')
- assert_equal(456, 0.0 ?? 456)
- endif
+ assert_equal(456, 0.0 ?? 456)
END
v9.CheckDefAndScriptSuccess(lines)
@@ -567,9 +557,7 @@
let anint = 10
let theone = 1
let thefour = 4
-if has('float')
- let afloat = 0.1
-endif
+let afloat = 0.1
let astring = 'asdf'
let ablob = 0z01ab
let alist = [2, 3, 4]
@@ -605,20 +593,18 @@
assert_equal(true, g:anint == 10)
assert_equal(false, 61 == g:anint)
- if has('float')
- var ff = 0.3
- assert_equal(true, ff == 0.3)
- assert_equal(false, 0.4 == ff)
- assert_equal(true, 0.1 == g:afloat)
- assert_equal(false, g:afloat == 0.3)
+ var ff = 0.3
+ assert_equal(true, ff == 0.3)
+ assert_equal(false, 0.4 == ff)
+ assert_equal(true, 0.1 == g:afloat)
+ assert_equal(false, g:afloat == 0.3)
- ff = 3.0
- assert_equal(true, ff == 3)
- assert_equal(true, 3 == ff)
- ff = 3.1
- assert_equal(false, ff == 3)
- assert_equal(false, 3 == ff)
- endif
+ ff = 3.0
+ assert_equal(true, ff == 3)
+ assert_equal(true, 3 == ff)
+ ff = 3.1
+ assert_equal(false, ff == 3)
+ assert_equal(false, 3 == ff)
assert_equal(true, 'abc' == 'abc')
assert_equal(false, 'xyz' == 'abc')
@@ -706,20 +692,18 @@
v9.CheckScriptFailure(lines, 'E1030: Using a String as a Number: "3"')
assert_true(g:notReached)
- if has('float')
- lines =<< trim END
- vim9script
- var n: any = 2.2
- def Compare()
- eval n == '3'
- g:notReached = false
- enddef
- g:notReached = true
- Compare()
- END
- v9.CheckScriptFailure(lines, 'E892: Using a String as a Float')
- assert_true(g:notReached)
- endif
+ lines =<< trim END
+ vim9script
+ var n: any = 2.2
+ def Compare()
+ eval n == '3'
+ g:notReached = false
+ enddef
+ g:notReached = true
+ Compare()
+ END
+ v9.CheckScriptFailure(lines, 'E892: Using a String as a Float')
+ assert_true(g:notReached)
unlet g:notReached
enddef
@@ -746,16 +730,14 @@
assert_true(null != 123)
assert_true(null != 0)
- if has('float')
- assert_false(12.3 == null)
- assert_false(0.0 == null)
- assert_false(null == 12.3)
- assert_false(null == 0.0)
- assert_true(12.3 != null)
- assert_true(0.0 != null)
- assert_true(null != 12.3)
- assert_true(null != 0.0)
- endif
+ assert_false(12.3 == null)
+ assert_false(0.0 == null)
+ assert_false(null == 12.3)
+ assert_false(null == 0.0)
+ assert_true(12.3 != null)
+ assert_true(0.0 != null)
+ assert_true(null != 12.3)
+ assert_true(null != 0.0)
assert_true(test_null_blob() == v:null)
assert_true(null_blob == null)
@@ -1077,20 +1059,18 @@
assert_equal(false, g:anint != 10)
assert_equal(true, 61 != g:anint)
- if has('float')
- var ff = 0.3
- assert_equal(false, 0.3 != ff)
- assert_equal(true, 0.4 != ff)
- assert_equal(false, 0.1 != g:afloat)
- assert_equal(true, g:afloat != 0.3)
+ var ff = 0.3
+ assert_equal(false, 0.3 != ff)
+ assert_equal(true, 0.4 != ff)
+ assert_equal(false, 0.1 != g:afloat)
+ assert_equal(true, g:afloat != 0.3)
- ff = 3.0
- assert_equal(false, ff != 3)
- assert_equal(false, 3 != ff)
- ff = 3.1
- assert_equal(true, ff != 3)
- assert_equal(true, 3 != ff)
- endif
+ ff = 3.0
+ assert_equal(false, ff != 3)
+ assert_equal(false, 3 != ff)
+ ff = 3.1
+ assert_equal(true, ff != 3)
+ assert_equal(true, 3 != ff)
assert_equal(false, 'abc' != 'abc')
assert_equal(true, 'xyz' != 'abc')
@@ -1149,13 +1129,11 @@
assert_false(nr2 > 2)
assert_false(nr2
> 3)
- if has('float')
- var ff = 2.0
- assert_true(ff > 0.0)
- assert_true(ff > 1.0)
- assert_false(ff > 2.0)
- assert_false(ff > 3.0)
- endif
+ var ff = 2.0
+ assert_true(ff > 0.0)
+ assert_true(ff > 1.0)
+ assert_false(ff > 2.0)
+ assert_false(ff > 3.0)
END
v9.CheckDefAndScriptSuccess(lines)
enddef
@@ -1171,12 +1149,10 @@
assert_true(nr2 >= 0)
assert_true(nr2 >= 2)
assert_false(nr2 >= 3)
- if has('float')
- var ff = 2.0
- assert_true(ff >= 0.0)
- assert_true(ff >= 2.0)
- assert_false(ff >= 3.0)
- endif
+ var ff = 2.0
+ assert_true(ff >= 0.0)
+ assert_true(ff >= 2.0)
+ assert_false(ff >= 3.0)
END
v9.CheckDefAndScriptSuccess(lines)
enddef
@@ -1193,12 +1169,10 @@
assert_false(nr2 < 0)
assert_false(nr2 < 2)
assert_true(nr2 < 3)
- if has('float')
- var ff = 2.0
- assert_false(ff < 0.0)
- assert_false(ff < 2.0)
- assert_true(ff < 3.0)
- endif
+ var ff = 2.0
+ assert_false(ff < 0.0)
+ assert_false(ff < 2.0)
+ assert_true(ff < 3.0)
END
v9.CheckDefAndScriptSuccess(lines)
enddef
@@ -1217,13 +1191,11 @@
assert_false(nr2 <= 1)
assert_true(nr2 <= 2)
assert_true(nr2 <= 3)
- if has('float')
- var ff = 2.0
- assert_false(ff <= 0.0)
- assert_false(ff <= 1.0)
- assert_true(ff <= 2.0)
- assert_true(ff <= 3.0)
- endif
+ var ff = 2.0
+ assert_false(ff <= 0.0)
+ assert_false(ff <= 1.0)
+ assert_true(ff <= 2.0)
+ assert_true(ff <= 3.0)
END
v9.CheckDefAndScriptSuccess(lines)
enddef
@@ -1456,10 +1428,8 @@
call v9.CheckDefAndScriptFailure(["var x = v:none isnot v:null"], 'Cannot use "isnot" with special', 1)
call v9.CheckDefAndScriptFailure(["var x = 123 is 123"], 'Cannot use "is" with number', 1)
call v9.CheckDefAndScriptFailure(["var x = 123 isnot 123"], 'Cannot use "isnot" with number', 1)
- if has('float')
- call v9.CheckDefAndScriptFailure(["var x = 1.3 is 1.3"], 'Cannot use "is" with float', 1)
- call v9.CheckDefAndScriptFailure(["var x = 1.3 isnot 1.3"], 'Cannot use "isnot" with float', 1)
- endif
+ call v9.CheckDefAndScriptFailure(["var x = 1.3 is 1.3"], 'Cannot use "is" with float', 1)
+ call v9.CheckDefAndScriptFailure(["var x = 1.3 isnot 1.3"], 'Cannot use "isnot" with float', 1)
call v9.CheckDefAndScriptFailure(["var x = 0za1 > 0z34"], 'Cannot compare blob with blob', 1)
call v9.CheckDefAndScriptFailure(["var x = 0za1 >= 0z34"], 'Cannot compare blob with blob', 1)
@@ -1518,9 +1488,7 @@
assert_equal('afalse', 'a' .. false)
assert_equal('anull', 'a' .. v:null)
assert_equal('av:none', 'a' .. v:none)
- if has('float')
- assert_equal('a0.123', 'a' .. 0.123)
- endif
+ assert_equal('a0.123', 'a' .. 0.123)
assert_equal(3, 1 + [2, 3, 4][0])
assert_equal(5, 2 + {key: 3}['key'])
@@ -1719,31 +1687,27 @@
enddef
def Test_expr6_float()
- if !has('float')
- MissingFeature 'float'
- else
- var lines =<< trim END
- assert_equal(66.0, 60.0 + 6.0)
- assert_equal(66.0, 60.0 + 6)
- assert_equal(66.0, 60 +
- 6.0)
- assert_equal(5.1, g:afloat
- + 5)
- assert_equal(8.1, 8 + g:afloat)
- assert_equal(10.1, g:anint + g:afloat)
- assert_equal(10.1, g:afloat + g:anint)
+ var lines =<< trim END
+ assert_equal(66.0, 60.0 + 6.0)
+ assert_equal(66.0, 60.0 + 6)
+ assert_equal(66.0, 60 +
+ 6.0)
+ assert_equal(5.1, g:afloat
+ + 5)
+ assert_equal(8.1, 8 + g:afloat)
+ assert_equal(10.1, g:anint + g:afloat)
+ assert_equal(10.1, g:afloat + g:anint)
- assert_equal(54.0, 60.0 - 6.0)
- assert_equal(54.0, 60.0
- - 6)
- assert_equal(54.0, 60 - 6.0)
- assert_equal(-4.9, g:afloat - 5)
- assert_equal(7.9, 8 - g:afloat)
- assert_equal(9.9, g:anint - g:afloat)
- assert_equal(-9.9, g:afloat - g:anint)
- END
- v9.CheckDefAndScriptSuccess(lines)
- endif
+ assert_equal(54.0, 60.0 - 6.0)
+ assert_equal(54.0, 60.0
+ - 6)
+ assert_equal(54.0, 60 - 6.0)
+ assert_equal(-4.9, g:afloat - 5)
+ assert_equal(7.9, 8 - g:afloat)
+ assert_equal(9.9, g:anint - g:afloat)
+ assert_equal(-9.9, g:afloat - g:anint)
+ END
+ v9.CheckDefAndScriptSuccess(lines)
enddef
func Test_expr6_fails()
@@ -1852,14 +1816,12 @@
var y = [3]
assert_equal(5, x[0] + y[0])
assert_equal(6, x[0] * y[0])
- if has('float')
- var xf = [2.0]
- var yf = [3.0]
- assert_equal(5.0, xf[0]
- + yf[0])
- assert_equal(6.0, xf[0]
- * yf[0])
- endif
+ var xf = [2.0]
+ var yf = [3.0]
+ assert_equal(5.0, xf[0]
+ + yf[0])
+ assert_equal(6.0, xf[0]
+ * yf[0])
END
v9.CheckDefAndScriptSuccess(lines)
@@ -1874,13 +1836,11 @@
v9.CheckDefExecFailure(['echo 123 / g:zero'], 'E1154: Divide by zero')
v9.CheckDefExecFailure(['echo 123 % g:zero'], 'E1154: Divide by zero')
- if has('float')
- v9.CheckDefExecAndScriptFailure([
- 'g:one = 1.0',
- 'g:two = 2.0',
- 'echo g:one % g:two',
- ], 'E804', 3)
- endif
+ v9.CheckDefExecAndScriptFailure([
+ 'g:one = 1.0',
+ 'g:two = 2.0',
+ 'echo g:one % g:two',
+ ], 'E804', 3)
lines =<< trim END
var n = 0
@@ -1948,36 +1908,32 @@
enddef
def Test_expr7_float()
- if !has('float')
- MissingFeature 'float'
- else
- var lines =<< trim END
- assert_equal(36.0, 6.0 * 6)
- assert_equal(36.0, 6 *
- 6.0)
- assert_equal(36.0, 6.0 * 6.0)
- assert_equal(1.0, g:afloat * g:anint)
+ var lines =<< trim END
+ assert_equal(36.0, 6.0 * 6)
+ assert_equal(36.0, 6 *
+ 6.0)
+ assert_equal(36.0, 6.0 * 6.0)
+ assert_equal(1.0, g:afloat * g:anint)
- assert_equal(10.0, 60 / 6.0)
- assert_equal(10.0, 60.0 /
- 6)
- assert_equal(10.0, 60.0 / 6.0)
- assert_equal(0.01, g:afloat / g:anint)
+ assert_equal(10.0, 60 / 6.0)
+ assert_equal(10.0, 60.0 /
+ 6)
+ assert_equal(10.0, 60.0 / 6.0)
+ assert_equal(0.01, g:afloat / g:anint)
- assert_equal(4.0, 6.0 * 4 / 6)
- assert_equal(4.0, 6 *
- 4.0 /
- 6)
- assert_equal(4.0, 6 * 4 / 6.0)
- assert_equal(4.0, 6.0 * 4.0 / 6)
- assert_equal(4.0, 6 * 4.0 / 6.0)
- assert_equal(4.0, 6.0 * 4 / 6.0)
- assert_equal(4.0, 6.0 * 4.0 / 6.0)
+ assert_equal(4.0, 6.0 * 4 / 6)
+ assert_equal(4.0, 6 *
+ 4.0 /
+ 6)
+ assert_equal(4.0, 6 * 4 / 6.0)
+ assert_equal(4.0, 6.0 * 4.0 / 6)
+ assert_equal(4.0, 6 * 4.0 / 6.0)
+ assert_equal(4.0, 6.0 * 4 / 6.0)
+ assert_equal(4.0, 6.0 * 4.0 / 6.0)
- assert_equal(4.0, 6.0 * 4.0 / 6.0)
- END
- v9.CheckDefAndScriptSuccess(lines)
- endif
+ assert_equal(4.0, 6.0 * 4.0 / 6.0)
+ END
+ v9.CheckDefAndScriptSuccess(lines)
enddef
func Test_expr7_fails()
@@ -2013,9 +1969,7 @@
call v9.CheckDefAndScriptFailure(["var x = {one: 1} % {two: 2}"], ['E1035:', 'E728:'], 1)
call v9.CheckDefAndScriptFailure(["var x = 0xff[1]"], ['E1107:', 'E1062:'], 1)
- if has('float')
- call v9.CheckDefAndScriptFailure(["var x = 0.7[1]"], ['E1107:', 'E806:'], 1)
- endif
+ call v9.CheckDefAndScriptFailure(["var x = 0.7[1]"], ['E1107:', 'E806:'], 1)
for op in ['*', '/', '%']
let lines = ['var x = 1', op .. '2', '# comment']
@@ -2025,16 +1979,14 @@
endfunc
func Test_expr7_float_fails()
- CheckFeature float
call v9.CheckDefAndScriptFailure(["var x = 1.0 % 2"], ['E1035:', 'E804:'], 1)
endfunc
" define here to use old style parsing
-if has('float')
- let g:float_zero = 0.0
- let g:float_neg = -9.8
- let g:float_big = 9.9e99
-endif
+let g:float_zero = 0.0
+let g:float_neg = -9.8
+let g:float_big = 9.9e99
+
let g:blob_empty = 0z
let g:blob_one = 0z01
let g:blob_long = 0z0102.0304
@@ -2099,17 +2051,13 @@
def Test_expr9_float()
# float constant
- if !has('float')
- MissingFeature 'float'
- else
- var lines =<< trim END
- assert_equal(g:float_zero, .0)
- assert_equal(g:float_zero, 0.0)
- assert_equal(g:float_neg, -9.8)
- assert_equal(g:float_big, 9.9e99)
- END
- v9.CheckDefAndScriptSuccess(lines)
- endif
+ var lines =<< trim END
+ assert_equal(g:float_zero, .0)
+ assert_equal(g:float_zero, 0.0)
+ assert_equal(g:float_neg, -9.8)
+ assert_equal(g:float_big, 9.9e99)
+ END
+ v9.CheckDefAndScriptSuccess(lines)
enddef
def Test_expr9_blob()
@@ -2797,11 +2745,9 @@
assert_equal('numberexpr', dkeys[12])
assert_equal('number', dkeys[34])
assert_equal('bool', dkeys[true])
- if has('float')
- dkeys = {[1.2]: 'floatexpr', [3.4]: 'float'}
- assert_equal('floatexpr', dkeys[1.2])
- assert_equal('float', dkeys[3.4])
- endif
+ dkeys = {[1.2]: 'floatexpr', [3.4]: 'float'}
+ assert_equal('floatexpr', dkeys[1.2])
+ assert_equal('float', dkeys[3.4])
# automatic conversion from number to string
var n = 123