summaryrefslogtreecommitdiffstats
path: root/tests/obj.test
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2018-08-16 18:54:44 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2018-08-16 18:54:44 (GMT)
commitc475df7cfbfab932ff2a21678fa244094c7c49ee (patch)
treeb78dc4daeaf04a878dcf8e2f524de422cf344adb /tests/obj.test
parent51ce0579e8d61cfce32dbe6ad2d2894ec6de60f7 (diff)
downloadtcl-c475df7cfbfab932ff2a21678fa244094c7c49ee.zip
tcl-c475df7cfbfab932ff2a21678fa244094c7c49ee.tar.gz
tcl-c475df7cfbfab932ff2a21678fa244094c7c49ee.tar.bz2
Undo various test-case changes, in order to prove platform compatibility
Diffstat (limited to 'tests/obj.test')
-rw-r--r--tests/obj.test24
1 files changed, 13 insertions, 11 deletions
diff --git a/tests/obj.test b/tests/obj.test
index 41b1428..ffd1a59 100644
--- a/tests/obj.test
+++ b/tests/obj.test
@@ -20,6 +20,8 @@ if {[lsearch [namespace children] ::tcltest] == -1} {
catch [list package require -exact Tcltest [info patchlevel]]
testConstraint testobj [llength [info commands testobj]]
+testConstraint longIs32bit [expr {int(0x80000000) < 0}]
+testConstraint wideBiggerThanInt [expr {wide(0x80000000) != int(0x80000000)}]
test obj-1.1 {Tcl_AppendAllObjTypes, and InitTypeTable, Tcl_RegisterObjType} testobj {
set r 1
@@ -547,34 +549,34 @@ test obj-32.1 {freeing very large object trees} {
unset x
} {}
-test obj-33.1 {integer overflow on input} {
+test obj-33.1 {integer overflow on input} {longIs32bit wideBiggerThanInt} {
set x 0x8000; append x 0000
list [string is integer $x] [expr { wide($x) }]
} {1 2147483648}
-test obj-33.2 {integer overflow on input} {
+test obj-33.2 {integer overflow on input} {longIs32bit wideBiggerThanInt} {
set x 0xffff; append x ffff
list [string is integer $x] [expr { wide($x) }]
} {1 4294967295}
test obj-33.3 {integer overflow on input} {
- set x 0x10000; append x 0000
- list [string is integer $x] [expr { wide($x) }]
-} {1 4294967296}
-test obj-33.4 {integer overflow on input} {
+ set x 0x100000000; append x 00000000
+ list [string is integer $x] [expr { $x }]
+} {0 18446744073709551616}
+test obj-33.4 {integer overflow on input} {longIs32bit wideBiggerThanInt} {
set x -0x8000; append x 0000
list [string is integer $x] [expr { wide($x) }]
} {1 -2147483648}
-test obj-33.5 {integer overflow on input} {
+test obj-33.5 {integer overflow on input} {longIs32bit wideBiggerThanInt} {
set x -0x8000; append x 0001
list [string is integer $x] [expr { wide($x) }]
} {1 -2147483649}
-test obj-33.6 {integer overflow on input} {
+test obj-33.6 {integer overflow on input} {longIs32bit wideBiggerThanInt} {
set x -0xffff; append x ffff
list [string is integer $x] [expr { wide($x) }]
} {1 -4294967295}
test obj-33.7 {integer overflow on input} {
- set x -0x10000; append x 0000
- list [string is integer $x] [expr { wide($x) }]
-} {1 -4294967296}
+ set x -0x100000000; append x 00000000
+ list [string is integer $x] [expr { $x }]
+} {0 -18446744073709551616}
test obj-34.1 {mp_iseven} testobj {
set result ""