OpenSCAD test run report

Sysid: linux_x86_64_llvmpipe-_llvm-6.0,-256_vbjb

Result summary: 1222 / 1226 tests passed (100%)

System info

OpenSCAD Version: 2019.10.23
System information: Linux 4.15.0-1028-gcp #29~16.04.1-Ubuntu SMP Tue Feb 12 16:31:10 UTC 2019 x86_64 Ubuntu 16.04.6 LTS 2 CPUs 7.30 GB RAM
User Agent: OpenSCAD/2019.10.23 (Linux x86_64; Ubuntu 16.04.6 LTS)
Compiler: GCC "5.4.0 20160609" 64bit
MinGW build: No
Debug build: Yes
Boost version: 1_58
Eigen version: 3.2.92
CGAL version, kernels: 4.11, Cartesian, Extended_cartesian, Epeck
OpenCSG version: OpenCSG 1.4.0
Qt version: 5.5.1
QScintilla version: 2.9.1
InputDrivers: 
GLib version: 2.48.2
lodepng version: 20180910
libzip version: 1.0.1
fontconfig version: 2.11.94
freetype version: 2.6.1
harfbuzz version: 1.0.1
lib3mf version: 1.8.1
Application Path: /home/travis/build/openscad/openscad/tests/..
Documents Path: /home/travis/.local/share
User Documents Path: /home/travis
Resource Path: /home/travis/build/openscad/openscad
User Library Path: /home/travis/.local/share/OpenSCAD/libraries
User Config Path: 
Backup Path: /home/travis/.local/share/OpenSCAD/backups
OPENSCADPATH: /home/travis/build/openscad/openscad/tests/../libraries
OpenSCAD library path:
  /home/travis/build/openscad/openscad/tests/../libraries
  /home/travis/.local/share/OpenSCAD/libraries
  /home/travis/build/openscad/openscad/libraries

OPENSCAD_FONT_PATH: 
OpenSCAD font path:
  /usr/share/fonts
  /usr/local/share/fonts
  /home/travis/.local/share/fonts
  /home/travis/.fonts
  /usr/X11/lib/X11/fonts
  /System/Library/Fonts
  /Library/Fonts
  /home/travis/Library/Fonts
  /usr/share/fonts/truetype
  /usr/share/fonts/truetype/dejavu
  /usr/share/fonts/truetype/liberation


GLEW version: 1.13.0
OpenGL Version: 3.0 Mesa 18.0.5
GL Renderer: llvmpipe (LLVM 6.0, 256 bits)
GL Vendor: VMware, Inc.
RGBA(8888), depth(24), stencil(8)
GL_ARB_framebuffer_object: yes
GL_EXT_framebuffer_object: yes
GL_EXT_packed_depth_stencil: yes
GL context creator: GLX
PNG generator: lodepng
GLX version: 1.4
OS info: Linux 4.15.0-1028-gcp #29~16.04.1-Ubuntu SMP Tue Feb 12 16:31:10 UTC 2019
Machine: x86_64
Git branch: (HEAD detached at FETCH_HEAD) from origin https://github.com/openscad/openscad.git
Git upstream:

Image comparer: ImageMagick

Tests start time: Oct 23 15:56 UTC

Tests end time: Oct 23 16:03 UTC

Image tests

all given tests passed

Text tests

echotest_expression-evaluation-tests
57/1226 Testing: echotest_expression-evaluation-tests
57/1226 Test: echotest_expression-evaluation-tests
Command: "/opt/pyenv/shims/python3" "/home/travis/build/openscad/openscad/tests/test_cmdline_tool.py" "--comparator=" "-c" "/usr/bin/convert" "-s" "echo" "-t" "echotest" "-f" "expression-evaluation-tests" "/home/travis/build/openscad/openscad/tests/../openscad" "/home/travis/build/openscad/openscad/tests/../testdata/scad/misc/expression-evaluation-tests.scad" "-o"
Directory: /home/travis/build/openscad/openscad/tests
"echotest_expression-evaluation-tests" start time: Oct 23 15:56 UTC
Output:
----------------------------------------------------------
expression-evaluation-tests
run_test() cmdline: /home/travis/build/openscad/openscad/tests/../openscad /home/travis/build/openscad/openscad/tests/../testdata/scad/misc/expression-evaluation-tests.scad -o /home/travis/build/openscad/openscad/tests/echotest-output/expression-evaluation-tests-actual.echo
using font directory: /home/travis/build/openscad/openscad/testdata/ttf
text comparison: 
 expected textfile:  /home/travis/build/openscad/openscad/tests/regression/echotest/expression-evaluation-tests-expected.echo
 actual textfile:  /home/travis/build/openscad/openscad/tests/echotest-output/expression-evaluation-tests-actual.echo
--- 

+++ 

@@ -321,41 +321,41 @@

 ECHO: v = [1], op = "[v]", result = undef
 ECHO: v = [1], op = "v[0]", result = 1
 ECHO: v = [1], op = "v[4]", result = undef
-ECHO: v = [0 : 1 : 0], op = "not v", result = false
-ECHO: v = [0 : 1 : 0], op = "-v", result = undef
-ECHO: v = [0 : 1 : 0], op = "v *", result = undef
-ECHO: v = [0 : 1 : 0], op = "* v", result = undef
-ECHO: v = [0 : 1 : 0], op = "v /", result = undef
-ECHO: v = [0 : 1 : 0], op = "/ v", result = undef
-ECHO: v = [0 : 1 : 0], op = "v %", result = undef
-ECHO: v = [0 : 1 : 0], op = "% v", result = undef
-ECHO: v = [0 : 1 : 0], op = "v +", result = undef
-ECHO: v = [0 : 1 : 0], op = "+ v", result = undef
-ECHO: v = [0 : 1 : 0], op = "v -", result = undef
-ECHO: v = [0 : 1 : 0], op = "- v", result = undef
-ECHO: v = [0 : 1 : 0], op = "v and true", result = true
-ECHO: v = [0 : 1 : 0], op = "v and false", result = false
-ECHO: v = [0 : 1 : 0], op = "v or true", result = true
-ECHO: v = [0 : 1 : 0], op = "v or false", result = true
-ECHO: v = [0 : 1 : 0], op = "[v]", result = undef
-ECHO: v = [0 : 1 : 0], op = "v[0]", result = 0
-ECHO: v = [0 : 1 : 0], op = "v[4]", result = undef
-ECHO: v = [1 : 1 : 2], op = "not v", result = false
-ECHO: v = [1 : 1 : 2], op = "-v", result = undef
-ECHO: v = [1 : 1 : 2], op = "v *", result = undef
-ECHO: v = [1 : 1 : 2], op = "* v", result = undef
-ECHO: v = [1 : 1 : 2], op = "v /", result = undef
-ECHO: v = [1 : 1 : 2], op = "/ v", result = undef
-ECHO: v = [1 : 1 : 2], op = "v %", result = undef
-ECHO: v = [1 : 1 : 2], op = "% v", result = undef
-ECHO: v = [1 : 1 : 2], op = "v +", result = undef
-ECHO: v = [1 : 1 : 2], op = "+ v", result = undef
-ECHO: v = [1 : 1 : 2], op = "v -", result = undef
-ECHO: v = [1 : 1 : 2], op = "- v", result = undef
-ECHO: v = [1 : 1 : 2], op = "v and true", result = true
-ECHO: v = [1 : 1 : 2], op = "v and false", result = false
-ECHO: v = [1 : 1 : 2], op = "v or true", result = true
-ECHO: v = [1 : 1 : 2], op = "v or false", result = true
-ECHO: v = [1 : 1 : 2], op = "[v]", result = undef
-ECHO: v = [1 : 1 : 2], op = "v[0]", result = 1
-ECHO: v = [1 : 1 : 2], op = "v[4]", result = undef
+ECHO: v = [0 : 0 : 0], op = "not v", result = false
+ECHO: v = [0 : 0 : 0], op = "-v", result = undef
+ECHO: v = [0 : 0 : 0], op = "v *", result = undef
+ECHO: v = [0 : 0 : 0], op = "* v", result = undef
+ECHO: v = [0 : 0 : 0], op = "v /", result = undef
+ECHO: v = [0 : 0 : 0], op = "/ v", result = undef
+ECHO: v = [0 : 0 : 0], op = "v %", result = undef
+ECHO: v = [0 : 0 : 0], op = "% v", result = undef
+ECHO: v = [0 : 0 : 0], op = "v +", result = undef
+ECHO: v = [0 : 0 : 0], op = "+ v", result = undef
+ECHO: v = [0 : 0 : 0], op = "v -", result = undef
+ECHO: v = [0 : 0 : 0], op = "- v", result = undef
+ECHO: v = [0 : 0 : 0], op = "v and true", result = true
+ECHO: v = [0 : 0 : 0], op = "v and false", result = false
+ECHO: v = [0 : 0 : 0], op = "v or true", result = true
+ECHO: v = [0 : 0 : 0], op = "v or false", result = true
+ECHO: v = [0 : 0 : 0], op = "[v]", result = undef
+ECHO: v = [0 : 0 : 0], op = "v[0]", result = 0
+ECHO: v = [0 : 0 : 0], op = "v[4]", result = undef
+ECHO: v = [1 : 1 : 1], op = "not v", result = false
+ECHO: v = [1 : 1 : 1], op = "-v", result = undef
+ECHO: v = [1 : 1 : 1], op = "v *", result = undef
+ECHO: v = [1 : 1 : 1], op = "* v", result = undef
+ECHO: v = [1 : 1 : 1], op = "v /", result = undef
+ECHO: v = [1 : 1 : 1], op = "/ v", result = undef
+ECHO: v = [1 : 1 : 1], op = "v %", result = undef
+ECHO: v = [1 : 1 : 1], op = "% v", result = undef
+ECHO: v = [1 : 1 : 1], op = "v +", result = undef
+ECHO: v = [1 : 1 : 1], op = "+ v", result = undef
+ECHO: v = [1 : 1 : 1], op = "v -", result = undef
+ECHO: v = [1 : 1 : 1], op = "- v", result = undef
+ECHO: v = [1 : 1 : 1], op = "v and true", result = true
+ECHO: v = [1 : 1 : 1], op = "v and false", result = false
+ECHO: v = [1 : 1 : 1], op = "v or true", result = true
+ECHO: v = [1 : 1 : 1], op = "v or false", result = true
+ECHO: v = [1 : 1 : 1], op = "[v]", result = undef
+ECHO: v = [1 : 1 : 1], op = "v[0]", result = 1
+ECHO: v = [1 : 1 : 1], op = "v[4]", result = undef
<end of output>
Test time =   0.42 sec
----------------------------------------------------------
Test Failed.
"echotest_expression-evaluation-tests" end time: Oct 23 15:56 UTC
"echotest_expression-evaluation-tests" time elapsed: 00:00:00

    
echotest_echo-tests
58/1226 Testing: echotest_echo-tests
58/1226 Test: echotest_echo-tests
Command: "/opt/pyenv/shims/python3" "/home/travis/build/openscad/openscad/tests/test_cmdline_tool.py" "--comparator=" "-c" "/usr/bin/convert" "-s" "echo" "-t" "echotest" "-f" "echo-tests" "/home/travis/build/openscad/openscad/tests/../openscad" "/home/travis/build/openscad/openscad/tests/../testdata/scad/misc/echo-tests.scad" "-o"
Directory: /home/travis/build/openscad/openscad/tests
"echotest_echo-tests" start time: Oct 23 15:56 UTC
Output:
----------------------------------------------------------
echo-tests
run_test() cmdline: /home/travis/build/openscad/openscad/tests/../openscad /home/travis/build/openscad/openscad/tests/../testdata/scad/misc/echo-tests.scad -o /home/travis/build/openscad/openscad/tests/echotest-output/echo-tests-actual.echo
using font directory: /home/travis/build/openscad/openscad/testdata/ttf
text comparison: 
 expected textfile:  /home/travis/build/openscad/openscad/tests/regression/echotest/echo-tests-expected.echo
 actual textfile:  /home/travis/build/openscad/openscad/tests/echotest-output/echo-tests-actual.echo
--- 

+++ 

@@ -3,9 +3,9 @@

 ECHO: "stringvar"
 ECHO: a = 1, b = 2, true, c = false
 ECHO: [1, "vecstr", 2.34, false]
-ECHO: [1 : 2 : 10]
+ECHO: [1 : 1 : 1]
 ECHO: vec = [1, 2, 3]
-ECHO: range = [0 : 1 : 2]
+ECHO: range = [0 : 0 : 0]
 ECHO: "string generated by str()"
 ECHO: 0.8
 ECHO: 1.1e-10
<end of output>
Test time =   0.46 sec
----------------------------------------------------------
Test Failed.
"echotest_echo-tests" end time: Oct 23 15:56 UTC
"echotest_echo-tests" time elapsed: 00:00:00

    
echotest_concat-tests
96/1226 Testing: echotest_concat-tests
96/1226 Test: echotest_concat-tests
Command: "/opt/pyenv/shims/python3" "/home/travis/build/openscad/openscad/tests/test_cmdline_tool.py" "--comparator=" "-c" "/usr/bin/convert" "-s" "echo" "-t" "echotest" "-f" "concat-tests" "/home/travis/build/openscad/openscad/tests/../openscad" "/home/travis/build/openscad/openscad/tests/../testdata/scad/misc/concat-tests.scad" "-o"
Directory: /home/travis/build/openscad/openscad/tests
"echotest_concat-tests" start time: Oct 23 15:56 UTC
Output:
----------------------------------------------------------
concat-tests
run_test() cmdline: /home/travis/build/openscad/openscad/tests/../openscad /home/travis/build/openscad/openscad/tests/../testdata/scad/misc/concat-tests.scad -o /home/travis/build/openscad/openscad/tests/echotest-output/concat-tests-actual.echo
using font directory: /home/travis/build/openscad/openscad/testdata/ttf
text comparison: 
 expected textfile:  /home/travis/build/openscad/openscad/tests/regression/echotest/concat-tests-expected.echo
 actual textfile:  /home/travis/build/openscad/openscad/tests/echotest-output/concat-tests-actual.echo
--- 

+++ 

@@ -8,7 +8,7 @@

 ECHO: [true]
 ECHO: [3]
 ECHO: ["abc"]
-ECHO: [[0 : 1 : 10]]
+ECHO: [[0 : 0 : 0]]
 ECHO: "--- single vectors"
 ECHO: [1, 2, 3]
 ECHO: [[1, 2, 3]]
@@ -18,19 +18,19 @@

 ECHO: [3, 3]
 ECHO: [1, 2, 3]
 ECHO: [1, 2, 3, 4, 5]
-ECHO: [1, "text", false, [1 : 0.5 : 3]]
+ECHO: [1, "text", false, [1 : 1 : 1]]
 ECHO: "--- vector / element"
 ECHO: [3, 4, undef]
 ECHO: [3, 4, 5, 6]
 ECHO: [3, 4, 5, 6, true]
 ECHO: [3, 4, "5", 6, "test"]
-ECHO: [3, 4, true, 6, [4 : 1 : 3]]
+ECHO: [3, 4, true, 6, [4 : 4 : 4]]
 ECHO: "--- element / vector"
 ECHO: [3]
 ECHO: [3, 3, 4]
 ECHO: [true, 3, [4]]
 ECHO: ["9", 1, 2, 3]
-ECHO: [[6 : 2 : 9], 3, [4]]
+ECHO: [[6 : 6 : 6], 3, [4]]
 ECHO: "--- vector / vector"
 ECHO: [3, 4]
 ECHO: [[], 3, 4]
<end of output>
Test time =   0.56 sec
----------------------------------------------------------
Test Failed.
"echotest_concat-tests" end time: Oct 23 15:56 UTC
"echotest_concat-tests" time elapsed: 00:00:00

    
echotest_operators-tests
106/1226 Testing: echotest_operators-tests
106/1226 Test: echotest_operators-tests
Command: "/opt/pyenv/shims/python3" "/home/travis/build/openscad/openscad/tests/test_cmdline_tool.py" "--comparator=" "-c" "/usr/bin/convert" "-s" "echo" "-t" "echotest" "-f" "operators-tests" "/home/travis/build/openscad/openscad/tests/../openscad" "/home/travis/build/openscad/openscad/tests/../testdata/scad/misc/operators-tests.scad" "-o"
Directory: /home/travis/build/openscad/openscad/tests
"echotest_operators-tests" start time: Oct 23 15:56 UTC
Output:
----------------------------------------------------------
operators-tests
run_test() cmdline: /home/travis/build/openscad/openscad/tests/../openscad /home/travis/build/openscad/openscad/tests/../testdata/scad/misc/operators-tests.scad -o /home/travis/build/openscad/openscad/tests/echotest-output/operators-tests-actual.echo
using font directory: /home/travis/build/openscad/openscad/testdata/ttf
text comparison: 
 expected textfile:  /home/travis/build/openscad/openscad/tests/regression/echotest/operators-tests-expected.echo
 actual textfile:  /home/travis/build/openscad/openscad/tests/echotest-output/operators-tests-actual.echo
--- 

+++ 

@@ -52,12 +52,12 @@

 ECHO: false, " <  ", [1, 2, 3], "->", false
 ECHO: false, " <= ", [1, 2, 3], "->", false
 ECHO: false, " != ", [1, 2, 3], "->", true
-ECHO: false, " == ", [0 : 1 : 3], "->", false
-ECHO: false, " >  ", [0 : 1 : 3], "->", false
-ECHO: false, " >= ", [0 : 1 : 3], "->", false
-ECHO: false, " <  ", [0 : 1 : 3], "->", false
-ECHO: false, " <= ", [0 : 1 : 3], "->", false
-ECHO: false, " != ", [0 : 1 : 3], "->", true
+ECHO: false, " == ", [0 : 0 : 0], "->", false
+ECHO: false, " >  ", [0 : 0 : 0], "->", false
+ECHO: false, " >= ", [0 : 0 : 0], "->", false
+ECHO: false, " <  ", [0 : 0 : 0], "->", false
+ECHO: false, " <= ", [0 : 0 : 0], "->", false
+ECHO: false, " != ", [0 : 0 : 0], "->", true
 ECHO: false, " == ", undef, "->", false
 ECHO: false, " >  ", undef, "->", false
 ECHO: false, " >= ", undef, "->", false
@@ -118,12 +118,12 @@

 ECHO: true, " <  ", [1, 2, 3], "->", false
 ECHO: true, " <= ", [1, 2, 3], "->", false
 ECHO: true, " != ", [1, 2, 3], "->", true
-ECHO: true, " == ", [0 : 1 : 3], "->", false
-ECHO: true, " >  ", [0 : 1 : 3], "->", false
-ECHO: true, " >= ", [0 : 1 : 3], "->", false
-ECHO: true, " <  ", [0 : 1 : 3], "->", false
-ECHO: true, " <= ", [0 : 1 : 3], "->", false
-ECHO: true, " != ", [0 : 1 : 3], "->", true
+ECHO: true, " == ", [0 : 0 : 0], "->", false
+ECHO: true, " >  ", [0 : 0 : 0], "->", false
+ECHO: true, " >= ", [0 : 0 : 0], "->", false
+ECHO: true, " <  ", [0 : 0 : 0], "->", false
+ECHO: true, " <= ", [0 : 0 : 0], "->", false
+ECHO: true, " != ", [0 : 0 : 0], "->", true
 ECHO: true, " == ", undef, "->", false
 ECHO: true, " >  ", undef, "->", false
 ECHO: true, " >= ", undef, "->", false
@@ -184,12 +184,12 @@

 ECHO: -1, " <  ", [1, 2, 3], "->", false
 ECHO: -1, " <= ", [1, 2, 3], "->", false
 ECHO: -1, " != ", [1, 2, 3], "->", true
-ECHO: -1, " == ", [0 : 1 : 3], "->", false
-ECHO: -1, " >  ", [0 : 1 : 3], "->", false
-ECHO: -1, " >= ", [0 : 1 : 3], "->", false
-ECHO: -1, " <  ", [0 : 1 : 3], "->", false
-ECHO: -1, " <= ", [0 : 1 : 3], "->", false
-ECHO: -1, " != ", [0 : 1 : 3], "->", true
+ECHO: -1, " == ", [0 : 0 : 0], "->", false
+ECHO: -1, " >  ", [0 : 0 : 0], "->", false
+ECHO: -1, " >= ", [0 : 0 : 0], "->", false
+ECHO: -1, " <  ", [0 : 0 : 0], "->", false
+ECHO: -1, " <= ", [0 : 0 : 0], "->", false
+ECHO: -1, " != ", [0 : 0 : 0], "->", true
 ECHO: -1, " == ", undef, "->", false
 ECHO: -1, " >  ", undef, "->", false
 ECHO: -1, " >= ", undef, "->", false
@@ -250,12 +250,12 @@

 ECHO: 0, " <  ", [1, 2, 3], "->", false
 ECHO: 0, " <= ", [1, 2, 3], "->", false
 ECHO: 0, " != ", [1, 2, 3], "->", true
-ECHO: 0, " == ", [0 : 1 : 3], "->", false
-ECHO: 0, " >  ", [0 : 1 : 3], "->", false
-ECHO: 0, " >= ", [0 : 1 : 3], "->", false
-ECHO: 0, " <  ", [0 : 1 : 3], "->", false
-ECHO: 0, " <= ", [0 : 1 : 3], "->", false
-ECHO: 0, " != ", [0 : 1 : 3], "->", true
+ECHO: 0, " == ", [0 : 0 : 0], "->", false
+ECHO: 0, " >  ", [0 : 0 : 0], "->", false
+ECHO: 0, " >= ", [0 : 0 : 0], "->", false
+ECHO: 0, " <  ", [0 : 0 : 0], "->", false
+ECHO: 0, " <= ", [0 : 0 : 0], "->", false
+ECHO: 0, " != ", [0 : 0 : 0], "->", true
 ECHO: 0, " == ", undef, "->", false
 ECHO: 0, " >  ", undef, "->", false
 ECHO: 0, " >= ", undef, "->", false
@@ -316,12 +316,12 @@

 ECHO: 1, " <  ", [1, 2, 3], "->", false
 ECHO: 1, " <= ", [1, 2, 3], "->", false
 ECHO: 1, " != ", [1, 2, 3], "->", true
-ECHO: 1, " == ", [0 : 1 : 3], "->", false
-ECHO: 1, " >  ", [0 : 1 : 3], "->", false
-ECHO: 1, " >= ", [0 : 1 : 3], "->", false
-ECHO: 1, " <  ", [0 : 1 : 3], "->", false
-ECHO: 1, " <= ", [0 : 1 : 3], "->", false
-ECHO: 1, " != ", [0 : 1 : 3], "->", true
+ECHO: 1, " == ", [0 : 0 : 0], "->", false
+ECHO: 1, " >  ", [0 : 0 : 0], "->", false
+ECHO: 1, " >= ", [0 : 0 : 0], "->", false
+ECHO: 1, " <  ", [0 : 0 : 0], "->", false
+ECHO: 1, " <= ", [0 : 0 : 0], "->", false
+ECHO: 1, " != ", [0 : 0 : 0], "->", true
 ECHO: 1, " == ", undef, "->", false
 ECHO: 1, " >  ", undef, "->", false
 ECHO: 1, " >= ", undef, "->", false
@@ -382,12 +382,12 @@

 ECHO: nan, " <  ", [1, 2, 3], "->", false
 ECHO: nan, " <= ", [1, 2, 3], "->", false
 ECHO: nan, " != ", [1, 2, 3], "->", true
-ECHO: nan, " == ", [0 : 1 : 3], "->", false
-ECHO: nan, " >  ", [0 : 1 : 3], "->", false
-ECHO: nan, " >= ", [0 : 1 : 3], "->", false
-ECHO: nan, " <  ", [0 : 1 : 3], "->", false
-ECHO: nan, " <= ", [0 : 1 : 3], "->", false
-ECHO: nan, " != ", [0 : 1 : 3], "->", true
+ECHO: nan, " == ", [0 : 0 : 0], "->", false
+ECHO: nan, " >  ", [0 : 0 : 0], "->", false
+ECHO: nan, " >= ", [0 : 0 : 0], "->", false
+ECHO: nan, " <  ", [0 : 0 : 0], "->", false
+ECHO: nan, " <= ", [0 : 0 : 0], "->", false
+ECHO: nan, " != ", [0 : 0 : 0], "->", true
 ECHO: nan, " == ", undef, "->", false
 ECHO: nan, " >  ", undef, "->", false
 ECHO: nan, " >= ", undef, "->", false
@@ -448,12 +448,12 @@

 ECHO: inf, " <  ", [1, 2, 3], "->", false
 ECHO: inf, " <= ", [1, 2, 3], "->", false
 ECHO: inf, " != ", [1, 2, 3], "->", true
-ECHO: inf, " == ", [0 : 1 : 3], "->", false
-ECHO: inf, " >  ", [0 : 1 : 3], "->", false
-ECHO: inf, " >= ", [0 : 1 : 3], "->", false
-ECHO: inf, " <  ", [0 : 1 : 3], "->", false
-ECHO: inf, " <= ", [0 : 1 : 3], "->", false
-ECHO: inf, " != ", [0 : 1 : 3], "->", true
+ECHO: inf, " == ", [0 : 0 : 0], "->", false
+ECHO: inf, " >  ", [0 : 0 : 0], "->", false
+ECHO: inf, " >= ", [0 : 0 : 0], "->", false
+ECHO: inf, " <  ", [0 : 0 : 0], "->", false
+ECHO: inf, " <= ", [0 : 0 : 0], "->", false
+ECHO: inf, " != ", [0 : 0 : 0], "->", true
 ECHO: inf, " == ", undef, "->", false
 ECHO: inf, " >  ", undef, "->", false
 ECHO: inf, " >= ", undef, "->", false
@@ -514,12 +514,12 @@

 ECHO: "alpha", " <  ", [1, 2, 3], "->", false
 ECHO: "alpha", " <= ", [1, 2, 3], "->", false
 ECHO: "alpha", " != ", [1, 2, 3], "->", true
-ECHO: "alpha", " == ", [0 : 1 : 3], "->", false
-ECHO: "alpha", " >  ", [0 : 1 : 3], "->", false
-ECHO: "alpha", " >= ", [0 : 1 : 3], "->", false
-ECHO: "alpha", " <  ", [0 : 1 : 3], "->", false
-ECHO: "alpha", " <= ", [0 : 1 : 3], "->", false
-ECHO: "alpha", " != ", [0 : 1 : 3], "->", true
+ECHO: "alpha", " == ", [0 : 0 : 0], "->", false
+ECHO: "alpha", " >  ", [0 : 0 : 0], "->", false
+ECHO: "alpha", " >= ", [0 : 0 : 0], "->", false
+ECHO: "alpha", " <  ", [0 : 0 : 0], "->", false
+ECHO: "alpha", " <= ", [0 : 0 : 0], "->", false
+ECHO: "alpha", " != ", [0 : 0 : 0], "->", true
 ECHO: "alpha", " == ", undef, "->", false
 ECHO: "alpha", " >  ", undef, "->", false
 ECHO: "alpha", " >= ", undef, "->", false
@@ -580,12 +580,12 @@

 ECHO: "beta", " <  ", [1, 2, 3], "->", false
 ECHO: "beta", " <= ", [1, 2, 3], "->", false
 ECHO: "beta", " != ", [1, 2, 3], "->", true
-ECHO: "beta", " == ", [0 : 1 : 3], "->", false
-ECHO: "beta", " >  ", [0 : 1 : 3], "->", false
-ECHO: "beta", " >= ", [0 : 1 : 3], "->", false
-ECHO: "beta", " <  ", [0 : 1 : 3], "->", false
-ECHO: "beta", " <= ", [0 : 1 : 3], "->", false
-ECHO: "beta", " != ", [0 : 1 : 3], "->", true
+ECHO: "beta", " == ", [0 : 0 : 0], "->", false
+ECHO: "beta", " >  ", [0 : 0 : 0], "->", false
+ECHO: "beta", " >= ", [0 : 0 : 0], "->", false
+ECHO: "beta", " <  ", [0 : 0 : 0], "->", false
+ECHO: "beta", " <= ", [0 : 0 : 0], "->", false
+ECHO: "beta", " != ", [0 : 0 : 0], "->", true
 ECHO: "beta", " == ", undef, "->", false
 ECHO: "beta", " >  ", undef, "->", false
 ECHO: "beta", " >= ", undef, "->", false
@@ -646,12 +646,12 @@

 ECHO: [1, 2, 3], " <  ", [1, 2, 3], "->", false
 ECHO: [1, 2, 3], " <= ", [1, 2, 3], "->", false
 ECHO: [1, 2, 3], " != ", [1, 2, 3], "->", false
-ECHO: [1, 2, 3], " == ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 3], " >  ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 3], " >= ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 3], " <  ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 3], " <= ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 3], " != ", [0 : 1 : 3], "->", true
+ECHO: [1, 2, 3], " == ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 3], " >  ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 3], " >= ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 3], " <  ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 3], " <= ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 3], " != ", [0 : 0 : 0], "->", true
 ECHO: [1, 2, 3], " == ", undef, "->", false
 ECHO: [1, 2, 3], " >  ", undef, "->", false
 ECHO: [1, 2, 3], " >= ", undef, "->", false
@@ -712,150 +712,150 @@

 ECHO: [1, 2, 4], " <  ", [1, 2, 3], "->", false
 ECHO: [1, 2, 4], " <= ", [1, 2, 3], "->", false
 ECHO: [1, 2, 4], " != ", [1, 2, 3], "->", true
-ECHO: [1, 2, 4], " == ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 4], " >  ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 4], " >= ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 4], " <  ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 4], " <= ", [0 : 1 : 3], "->", false
-ECHO: [1, 2, 4], " != ", [0 : 1 : 3], "->", true
+ECHO: [1, 2, 4], " == ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 4], " >  ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 4], " >= ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 4], " <  ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 4], " <= ", [0 : 0 : 0], "->", false
+ECHO: [1, 2, 4], " != ", [0 : 0 : 0], "->", true
 ECHO: [1, 2, 4], " == ", undef, "->", false
 ECHO: [1, 2, 4], " >  ", undef, "->", false
 ECHO: [1, 2, 4], " >= ", undef, "->", false
 ECHO: [1, 2, 4], " <  ", undef, "->", false
 ECHO: [1, 2, 4], " <= ", undef, "->", false
 ECHO: [1, 2, 4], " != ", undef, "->", true
-ECHO: [0 : 1 : 3], " == ", false, "->", false
-ECHO: [0 : 1 : 3], " >  ", false, "->", false
-ECHO: [0 : 1 : 3], " >= ", false, "->", false
-ECHO: [0 : 1 : 3], " <  ", false, "->", false
-ECHO: [0 : 1 : 3], " <= ", false, "->", false
-ECHO: [0 : 1 : 3], " != ", false, "->", true
-ECHO: [0 : 1 : 3], " == ", true, "->", false
-ECHO: [0 : 1 : 3], " >  ", true, "->", false
-ECHO: [0 : 1 : 3], " >= ", true, "->", false
-ECHO: [0 : 1 : 3], " <  ", true, "->", false
-ECHO: [0 : 1 : 3], " <= ", true, "->", false
-ECHO: [0 : 1 : 3], " != ", true, "->", true
-ECHO: [0 : 1 : 3], " == ", -1, "->", false
-ECHO: [0 : 1 : 3], " >  ", -1, "->", false
-ECHO: [0 : 1 : 3], " >= ", -1, "->", false
-ECHO: [0 : 1 : 3], " <  ", -1, "->", false
-ECHO: [0 : 1 : 3], " <= ", -1, "->", false
-ECHO: [0 : 1 : 3], " != ", -1, "->", true
-ECHO: [0 : 1 : 3], " == ", 0, "->", false
-ECHO: [0 : 1 : 3], " >  ", 0, "->", false
-ECHO: [0 : 1 : 3], " >= ", 0, "->", false
-ECHO: [0 : 1 : 3], " <  ", 0, "->", false
-ECHO: [0 : 1 : 3], " <= ", 0, "->", false
-ECHO: [0 : 1 : 3], " != ", 0, "->", true
-ECHO: [0 : 1 : 3], " == ", 1, "->", false
-ECHO: [0 : 1 : 3], " >  ", 1, "->", false
-ECHO: [0 : 1 : 3], " >= ", 1, "->", false
-ECHO: [0 : 1 : 3], " <  ", 1, "->", false
-ECHO: [0 : 1 : 3], " <= ", 1, "->", false
-ECHO: [0 : 1 : 3], " != ", 1, "->", true
-ECHO: [0 : 1 : 3], " == ", nan, "->", false
-ECHO: [0 : 1 : 3], " >  ", nan, "->", false
-ECHO: [0 : 1 : 3], " >= ", nan, "->", false
-ECHO: [0 : 1 : 3], " <  ", nan, "->", false
-ECHO: [0 : 1 : 3], " <= ", nan, "->", false
-ECHO: [0 : 1 : 3], " != ", nan, "->", true
-ECHO: [0 : 1 : 3], " == ", inf, "->", false
-ECHO: [0 : 1 : 3], " >  ", inf, "->", false
-ECHO: [0 : 1 : 3], " >= ", inf, "->", false
-ECHO: [0 : 1 : 3], " <  ", inf, "->", false
-ECHO: [0 : 1 : 3], " <= ", inf, "->", false
-ECHO: [0 : 1 : 3], " != ", inf, "->", true
-ECHO: [0 : 1 : 3], " == ", "alpha", "->", false
-ECHO: [0 : 1 : 3], " >  ", "alpha", "->", false
-ECHO: [0 : 1 : 3], " >= ", "alpha", "->", false
-ECHO: [0 : 1 : 3], " <  ", "alpha", "->", false
-ECHO: [0 : 1 : 3], " <= ", "alpha", "->", false
-ECHO: [0 : 1 : 3], " != ", "alpha", "->", true
-ECHO: [0 : 1 : 3], " == ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 3], " >  ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 3], " >= ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 3], " <  ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 3], " <= ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 3], " != ", [1, 2, 3], "->", true
-ECHO: [0 : 1 : 3], " == ", [0 : 1 : 3], "->", true
-ECHO: [0 : 1 : 3], " >  ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 3], " >= ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 3], " <  ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 3], " <= ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 3], " != ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 3], " == ", undef, "->", false
-ECHO: [0 : 1 : 3], " >  ", undef, "->", false
-ECHO: [0 : 1 : 3], " >= ", undef, "->", false
-ECHO: [0 : 1 : 3], " <  ", undef, "->", false
-ECHO: [0 : 1 : 3], " <= ", undef, "->", false
-ECHO: [0 : 1 : 3], " != ", undef, "->", true
-ECHO: [0 : 1 : 1], " == ", false, "->", false
-ECHO: [0 : 1 : 1], " >  ", false, "->", false
-ECHO: [0 : 1 : 1], " >= ", false, "->", false
-ECHO: [0 : 1 : 1], " <  ", false, "->", false
-ECHO: [0 : 1 : 1], " <= ", false, "->", false
-ECHO: [0 : 1 : 1], " != ", false, "->", true
-ECHO: [0 : 1 : 1], " == ", true, "->", false
-ECHO: [0 : 1 : 1], " >  ", true, "->", false
-ECHO: [0 : 1 : 1], " >= ", true, "->", false
-ECHO: [0 : 1 : 1], " <  ", true, "->", false
-ECHO: [0 : 1 : 1], " <= ", true, "->", false
-ECHO: [0 : 1 : 1], " != ", true, "->", true
-ECHO: [0 : 1 : 1], " == ", -1, "->", false
-ECHO: [0 : 1 : 1], " >  ", -1, "->", false
-ECHO: [0 : 1 : 1], " >= ", -1, "->", false
-ECHO: [0 : 1 : 1], " <  ", -1, "->", false
-ECHO: [0 : 1 : 1], " <= ", -1, "->", false
-ECHO: [0 : 1 : 1], " != ", -1, "->", true
-ECHO: [0 : 1 : 1], " == ", 0, "->", false
-ECHO: [0 : 1 : 1], " >  ", 0, "->", false
-ECHO: [0 : 1 : 1], " >= ", 0, "->", false
-ECHO: [0 : 1 : 1], " <  ", 0, "->", false
-ECHO: [0 : 1 : 1], " <= ", 0, "->", false
-ECHO: [0 : 1 : 1], " != ", 0, "->", true
-ECHO: [0 : 1 : 1], " == ", 1, "->", false
-ECHO: [0 : 1 : 1], " >  ", 1, "->", false
-ECHO: [0 : 1 : 1], " >= ", 1, "->", false
-ECHO: [0 : 1 : 1], " <  ", 1, "->", false
-ECHO: [0 : 1 : 1], " <= ", 1, "->", false
-ECHO: [0 : 1 : 1], " != ", 1, "->", true
-ECHO: [0 : 1 : 1], " == ", nan, "->", false
-ECHO: [0 : 1 : 1], " >  ", nan, "->", false
-ECHO: [0 : 1 : 1], " >= ", nan, "->", false
-ECHO: [0 : 1 : 1], " <  ", nan, "->", false
-ECHO: [0 : 1 : 1], " <= ", nan, "->", false
-ECHO: [0 : 1 : 1], " != ", nan, "->", true
-ECHO: [0 : 1 : 1], " == ", inf, "->", false
-ECHO: [0 : 1 : 1], " >  ", inf, "->", false
-ECHO: [0 : 1 : 1], " >= ", inf, "->", false
-ECHO: [0 : 1 : 1], " <  ", inf, "->", false
-ECHO: [0 : 1 : 1], " <= ", inf, "->", false
-ECHO: [0 : 1 : 1], " != ", inf, "->", true
-ECHO: [0 : 1 : 1], " == ", "alpha", "->", false
-ECHO: [0 : 1 : 1], " >  ", "alpha", "->", false
-ECHO: [0 : 1 : 1], " >= ", "alpha", "->", false
-ECHO: [0 : 1 : 1], " <  ", "alpha", "->", false
-ECHO: [0 : 1 : 1], " <= ", "alpha", "->", false
-ECHO: [0 : 1 : 1], " != ", "alpha", "->", true
-ECHO: [0 : 1 : 1], " == ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 1], " >  ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 1], " >= ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 1], " <  ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 1], " <= ", [1, 2, 3], "->", false
-ECHO: [0 : 1 : 1], " != ", [1, 2, 3], "->", true
-ECHO: [0 : 1 : 1], " == ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 1], " >  ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 1], " >= ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 1], " <  ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 1], " <= ", [0 : 1 : 3], "->", false
-ECHO: [0 : 1 : 1], " != ", [0 : 1 : 3], "->", true
-ECHO: [0 : 1 : 1], " == ", undef, "->", false
-ECHO: [0 : 1 : 1], " >  ", undef, "->", false
-ECHO: [0 : 1 : 1], " >= ", undef, "->", false
-ECHO: [0 : 1 : 1], " <  ", undef, "->", false
-ECHO: [0 : 1 : 1], " <= ", undef, "->", false
-ECHO: [0 : 1 : 1], " != ", undef, "->", true
+ECHO: [0 : 0 : 0], " == ", false, "->", false
+ECHO: [0 : 0 : 0], " >  ", false, "->", false
+ECHO: [0 : 0 : 0], " >= ", false, "->", false
+ECHO: [0 : 0 : 0], " <  ", false, "->", false
+ECHO: [0 : 0 : 0], " <= ", false, "->", false
+ECHO: [0 : 0 : 0], " != ", false, "->", true
+ECHO: [0 : 0 : 0], " == ", true, "->", false
+ECHO: [0 : 0 : 0], " >  ", true, "->", false
+ECHO: [0 : 0 : 0], " >= ", true, "->", false
+ECHO: [0 : 0 : 0], " <  ", true, "->", false
+ECHO: [0 : 0 : 0], " <= ", true, "->", false
+ECHO: [0 : 0 : 0], " != ", true, "->", true
+ECHO: [0 : 0 : 0], " == ", -1, "->", false
+ECHO: [0 : 0 : 0], " >  ", -1, "->", false
+ECHO: [0 : 0 : 0], " >= ", -1, "->", false
+ECHO: [0 : 0 : 0], " <  ", -1, "->", false
+ECHO: [0 : 0 : 0], " <= ", -1, "->", false
+ECHO: [0 : 0 : 0], " != ", -1, "->", true
+ECHO: [0 : 0 : 0], " == ", 0, "->", false
+ECHO: [0 : 0 : 0], " >  ", 0, "->", false
+ECHO: [0 : 0 : 0], " >= ", 0, "->", false
+ECHO: [0 : 0 : 0], " <  ", 0, "->", false
+ECHO: [0 : 0 : 0], " <= ", 0, "->", false
+ECHO: [0 : 0 : 0], " != ", 0, "->", true
+ECHO: [0 : 0 : 0], " == ", 1, "->", false
+ECHO: [0 : 0 : 0], " >  ", 1, "->", false
+ECHO: [0 : 0 : 0], " >= ", 1, "->", false
+ECHO: [0 : 0 : 0], " <  ", 1, "->", false
+ECHO: [0 : 0 : 0], " <= ", 1, "->", false
+ECHO: [0 : 0 : 0], " != ", 1, "->", true
+ECHO: [0 : 0 : 0], " == ", nan, "->", false
+ECHO: [0 : 0 : 0], " >  ", nan, "->", false
+ECHO: [0 : 0 : 0], " >= ", nan, "->", false
+ECHO: [0 : 0 : 0], " <  ", nan, "->", false
+ECHO: [0 : 0 : 0], " <= ", nan, "->", false
+ECHO: [0 : 0 : 0], " != ", nan, "->", true
+ECHO: [0 : 0 : 0], " == ", inf, "->", false
+ECHO: [0 : 0 : 0], " >  ", inf, "->", false
+ECHO: [0 : 0 : 0], " >= ", inf, "->", false
+ECHO: [0 : 0 : 0], " <  ", inf, "->", false
+ECHO: [0 : 0 : 0], " <= ", inf, "->", false
+ECHO: [0 : 0 : 0], " != ", inf, "->", true
+ECHO: [0 : 0 : 0], " == ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " >  ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " >= ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " <  ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " <= ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " != ", "alpha", "->", true
+ECHO: [0 : 0 : 0], " == ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " >  ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " >= ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " <  ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " <= ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " != ", [1, 2, 3], "->", true
+ECHO: [0 : 0 : 0], " == ", [0 : 0 : 0], "->", true
+ECHO: [0 : 0 : 0], " >  ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " >= ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " <  ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " <= ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " != ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " == ", undef, "->", false
+ECHO: [0 : 0 : 0], " >  ", undef, "->", false
+ECHO: [0 : 0 : 0], " >= ", undef, "->", false
+ECHO: [0 : 0 : 0], " <  ", undef, "->", false
+ECHO: [0 : 0 : 0], " <= ", undef, "->", false
+ECHO: [0 : 0 : 0], " != ", undef, "->", true
+ECHO: [0 : 0 : 0], " == ", false, "->", false
+ECHO: [0 : 0 : 0], " >  ", false, "->", false
+ECHO: [0 : 0 : 0], " >= ", false, "->", false
+ECHO: [0 : 0 : 0], " <  ", false, "->", false
+ECHO: [0 : 0 : 0], " <= ", false, "->", false
+ECHO: [0 : 0 : 0], " != ", false, "->", true
+ECHO: [0 : 0 : 0], " == ", true, "->", false
+ECHO: [0 : 0 : 0], " >  ", true, "->", false
+ECHO: [0 : 0 : 0], " >= ", true, "->", false
+ECHO: [0 : 0 : 0], " <  ", true, "->", false
+ECHO: [0 : 0 : 0], " <= ", true, "->", false
+ECHO: [0 : 0 : 0], " != ", true, "->", true
+ECHO: [0 : 0 : 0], " == ", -1, "->", false
+ECHO: [0 : 0 : 0], " >  ", -1, "->", false
+ECHO: [0 : 0 : 0], " >= ", -1, "->", false
+ECHO: [0 : 0 : 0], " <  ", -1, "->", false
+ECHO: [0 : 0 : 0], " <= ", -1, "->", false
+ECHO: [0 : 0 : 0], " != ", -1, "->", true
+ECHO: [0 : 0 : 0], " == ", 0, "->", false
+ECHO: [0 : 0 : 0], " >  ", 0, "->", false
+ECHO: [0 : 0 : 0], " >= ", 0, "->", false
+ECHO: [0 : 0 : 0], " <  ", 0, "->", false
+ECHO: [0 : 0 : 0], " <= ", 0, "->", false
+ECHO: [0 : 0 : 0], " != ", 0, "->", true
+ECHO: [0 : 0 : 0], " == ", 1, "->", false
+ECHO: [0 : 0 : 0], " >  ", 1, "->", false
+ECHO: [0 : 0 : 0], " >= ", 1, "->", false
+ECHO: [0 : 0 : 0], " <  ", 1, "->", false
+ECHO: [0 : 0 : 0], " <= ", 1, "->", false
+ECHO: [0 : 0 : 0], " != ", 1, "->", true
+ECHO: [0 : 0 : 0], " == ", nan, "->", false
+ECHO: [0 : 0 : 0], " >  ", nan, "->", false
+ECHO: [0 : 0 : 0], " >= ", nan, "->", false
+ECHO: [0 : 0 : 0], " <  ", nan, "->", false
+ECHO: [0 : 0 : 0], " <= ", nan, "->", false
+ECHO: [0 : 0 : 0], " != ", nan, "->", true
+ECHO: [0 : 0 : 0], " == ", inf, "->", false
+ECHO: [0 : 0 : 0], " >  ", inf, "->", false
+ECHO: [0 : 0 : 0], " >= ", inf, "->", false
+ECHO: [0 : 0 : 0], " <  ", inf, "->", false
+ECHO: [0 : 0 : 0], " <= ", inf, "->", false
+ECHO: [0 : 0 : 0], " != ", inf, "->", true
+ECHO: [0 : 0 : 0], " == ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " >  ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " >= ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " <  ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " <= ", "alpha", "->", false
+ECHO: [0 : 0 : 0], " != ", "alpha", "->", true
+ECHO: [0 : 0 : 0], " == ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " >  ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " >= ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " <  ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " <= ", [1, 2, 3], "->", false
+ECHO: [0 : 0 : 0], " != ", [1, 2, 3], "->", true
+ECHO: [0 : 0 : 0], " == ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " >  ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " >= ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " <  ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " <= ", [0 : 0 : 0], "->", false
+ECHO: [0 : 0 : 0], " != ", [0 : 0 : 0], "->", true
+ECHO: [0 : 0 : 0], " == ", undef, "->", false
+ECHO: [0 : 0 : 0], " >  ", undef, "->", false
+ECHO: [0 : 0 : 0], " >= ", undef, "->", false
+ECHO: [0 : 0 : 0], " <  ", undef, "->", false
+ECHO: [0 : 0 : 0], " <= ", undef, "->", false
+ECHO: [0 : 0 : 0], " != ", undef, "->", true
 ECHO: undef, " == ", false, "->", false
 ECHO: undef, " >  ", false, "->", false
 ECHO: undef, " >= ", false, "->", false
@@ -910,12 +910,12 @@

 ECHO: undef, " <  ", [1, 2, 3], "->", false
 ECHO: undef, " <= ", [1, 2, 3], "->", false
 ECHO: undef, " != ", [1, 2, 3], "->", true
-ECHO: undef, " == ", [0 : 1 : 3], "->", false
-ECHO: undef, " >  ", [0 : 1 : 3], "->", false
-ECHO: undef, " >= ", [0 : 1 : 3], "->", false
-ECHO: undef, " <  ", [0 : 1 : 3], "->", false
-ECHO: undef, " <= ", [0 : 1 : 3], "->", false
-ECHO: undef, " != ", [0 : 1 : 3], "->", true
+ECHO: undef, " == ", [0 : 0 : 0], "->", false
+ECHO: undef, " >  ", [0 : 0 : 0], "->", false
+ECHO: undef, " >= ", [0 : 0 : 0], "->", false
+ECHO: undef, " <  ", [0 : 0 : 0], "->", false
+ECHO: undef, " <= ", [0 : 0 : 0], "->", false
+ECHO: undef, " != ", [0 : 0 : 0], "->", true
 ECHO: undef, " == ", undef, "->", true
 ECHO: undef, " >  ", undef, "->", false
 ECHO: undef, " >= ", undef, "->", false
<end of output>
Test time =   0.56 sec
----------------------------------------------------------
Test Failed.
"echotest_operators-tests" end time: Oct 23 15:56 UTC
"echotest_operators-tests" time elapsed: 00:00:00

    

build.make and flags.make

CMakeFiles/issue2342.dir/build.make

        # CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 3.12

# Delete rule output on recipe failure.
.DELETE_ON_ERROR:


#=============================================================================
# Special targets provided by cmake.

# Disable implicit rules so canonical targets will work.
.SUFFIXES:


# Remove some rules from gmake that .SUFFIXES does not remove.
SUFFIXES =

.SUFFIXES: .hpux_make_needs_suffix_list


# Suppress display of executed commands.
$(VERBOSE).SILENT:


# A target that is always out of date.
cmake_force:

.PHONY : cmake_force

#=============================================================================
# Set environment variables for the build.

# The shell in which to execute make rules.
SHELL = /bin/sh

# The CMake executable.
CMAKE_COMMAND = /usr/local/cmake-3.12.4/bin/cmake

# The command to remove a file.
RM = /usr/local/cmake-3.12.4/bin/cmake -E remove -f

# Escaping for special characters.
EQUALS = =

# The top-level source directory on which CMake was run.
CMAKE_SOURCE_DIR = /home/travis/build/openscad/openscad/tests

# The top-level build directory on which CMake was run.
CMAKE_BINARY_DIR = /home/travis/build/openscad/openscad/tests

# Utility rule file for issue2342.

# Include the progress variables for this target.
include CMakeFiles/issue2342.dir/progress.make

CMakeFiles/issue2342:
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/travis/build/openscad/openscad/tests/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating issue2342.scad"
	cd /home/travis/build/openscad/openscad/testdata/python && /opt/pyenv/shims/python3 /home/travis/build/openscad/openscad/tests/../testdata/python/gen_issue2342.py >/home/travis/build/openscad/openscad/tests/../testdata/scad/issues/issue2342.scad

issue2342: CMakeFiles/issue2342
issue2342: CMakeFiles/issue2342.dir/build.make

.PHONY : issue2342

# Rule to build all files generated by this target.
CMakeFiles/issue2342.dir/build: issue2342

.PHONY : CMakeFiles/issue2342.dir/build

CMakeFiles/issue2342.dir/clean:
	$(CMAKE_COMMAND) -P CMakeFiles/issue2342.dir/cmake_clean.cmake
.PHONY : CMakeFiles/issue2342.dir/clean

CMakeFiles/issue2342.dir/depend:
	cd /home/travis/build/openscad/openscad/tests && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests/CMakeFiles/issue2342.dir/DependInfo.cmake --color=$(COLOR)
.PHONY : CMakeFiles/issue2342.dir/depend


    

CMakeFiles/svg_viewbox_tests.dir/build.make

        # CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 3.12

# Delete rule output on recipe failure.
.DELETE_ON_ERROR:


#=============================================================================
# Special targets provided by cmake.

# Disable implicit rules so canonical targets will work.
.SUFFIXES:


# Remove some rules from gmake that .SUFFIXES does not remove.
SUFFIXES =

.SUFFIXES: .hpux_make_needs_suffix_list


# Suppress display of executed commands.
$(VERBOSE).SILENT:


# A target that is always out of date.
cmake_force:

.PHONY : cmake_force

#=============================================================================
# Set environment variables for the build.

# The shell in which to execute make rules.
SHELL = /bin/sh

# The CMake executable.
CMAKE_COMMAND = /usr/local/cmake-3.12.4/bin/cmake

# The command to remove a file.
RM = /usr/local/cmake-3.12.4/bin/cmake -E remove -f

# Escaping for special characters.
EQUALS = =

# The top-level source directory on which CMake was run.
CMAKE_SOURCE_DIR = /home/travis/build/openscad/openscad/tests

# The top-level build directory on which CMake was run.
CMAKE_BINARY_DIR = /home/travis/build/openscad/openscad/tests

# Utility rule file for svg_viewbox_tests.

# Include the progress variables for this target.
include CMakeFiles/svg_viewbox_tests.dir/progress.make

CMakeFiles/svg_viewbox_tests:
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/travis/build/openscad/openscad/tests/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating svg viewbox tests"
	cd /home/travis/build/openscad/openscad/testdata/python && /opt/pyenv/shims/python3 /home/travis/build/openscad/openscad/tests/../testdata/python/gen_svg_viewbox_tests.py /home/travis/build/openscad/openscad/tests/../testdata/svg/viewbox /home/travis/build/openscad/openscad/tests/../testdata/scad/svg/extruded

svg_viewbox_tests: CMakeFiles/svg_viewbox_tests
svg_viewbox_tests: CMakeFiles/svg_viewbox_tests.dir/build.make

.PHONY : svg_viewbox_tests

# Rule to build all files generated by this target.
CMakeFiles/svg_viewbox_tests.dir/build: svg_viewbox_tests

.PHONY : CMakeFiles/svg_viewbox_tests.dir/build

CMakeFiles/svg_viewbox_tests.dir/clean:
	$(CMAKE_COMMAND) -P CMakeFiles/svg_viewbox_tests.dir/cmake_clean.cmake
.PHONY : CMakeFiles/svg_viewbox_tests.dir/clean

CMakeFiles/svg_viewbox_tests.dir/depend:
	cd /home/travis/build/openscad/openscad/tests && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests /home/travis/build/openscad/openscad/tests/CMakeFiles/svg_viewbox_tests.dir/DependInfo.cmake --color=$(COLOR)
.PHONY : CMakeFiles/svg_viewbox_tests.dir/depend