aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/bullet/output2.txt270
-rw-r--r--tests/cases/aliasbitcast2.ll27
-rw-r--r--tests/cases/aliasbitcast3.ll29
-rw-r--r--tests/cases/i64toi8star.ll32
-rw-r--r--tests/cases/i64toi8star.txt3
-rw-r--r--tests/gl/sdl_ogl.c12
-rw-r--r--tests/openjpeg/opj_config.h22
-rw-r--r--tests/parseInt/output.txt24
-rw-r--r--tests/printf/output_i64_1.txt8278
-rw-r--r--tests/runner.py341
-rw-r--r--tests/stat/src.c24
11 files changed, 8926 insertions, 136 deletions
diff --git a/tests/bullet/output2.txt b/tests/bullet/output2.txt
new file mode 100644
index 00000000..d74a1031
--- /dev/null
+++ b/tests/bullet/output2.txt
@@ -0,0 +1,270 @@
+world pos = 2.00,10.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.99,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.98,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.97,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.96,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.94,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.92,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.90,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.88,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.85,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.82,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.78,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.75,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.71,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.67,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.62,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.57,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.52,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.47,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.42,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.36,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.30,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.23,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.17,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.10,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,9.02,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.95,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.87,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.79,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.71,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.62,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.53,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.44,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.35,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.25,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.15,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,8.05,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.94,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.83,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.72,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.61,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.49,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.37,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.25,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.13,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,7.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.87,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.73,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.60,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.46,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.32,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.17,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,6.03,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,5.88,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,5.72,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,5.57,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,5.41,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,5.25,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,5.08,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,4.92,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,4.75,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,4.58,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,4.40,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,4.22,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,4.04,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,3.86,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,3.67,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,3.48,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,3.29,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,3.10,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,2.90,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,2.70,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,2.50,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,2.29,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,2.08,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,1.87,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,1.66,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,1.44,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,1.22,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,1.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,0.77,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,0.55,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,0.32,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,0.08,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-0.15,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-0.39,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-0.63,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-0.88,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-1.13,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-1.38,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-1.63,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-1.88,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-2.14,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-2.40,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-2.67,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-2.93,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-3.20,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-3.48,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-3.75,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.03,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.31,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.59,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.88,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.17,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.13,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.10,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.08,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.05,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.03,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.01,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.99,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.98,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.97,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.96,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.95,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.95,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.95,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.95,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.96,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.97,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.98,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-4.99,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
+world pos = 2.00,-5.00,0.00
+world pos = 0.00,-56.00,0.00
diff --git a/tests/cases/aliasbitcast2.ll b/tests/cases/aliasbitcast2.ll
new file mode 100644
index 00000000..8537e272
--- /dev/null
+++ b/tests/cases/aliasbitcast2.ll
@@ -0,0 +1,27 @@
+; ModuleID = '/tmp/emscripten/tmp/src.cpp.o'
+target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
+target triple = "i386-pc-linux-gnu"
+
+@.str = private constant [14 x i8] c"hello, world!\00", align 1 ; [#uses=1]
+
+@othername = alias bitcast (void ()* @original to void (i32)*) ; [#uses=1]
+
+; [#uses=2]
+define void @original() {
+entry:
+ %0 = call i32 bitcast (i32 (i8*)* @puts to i32 (i32*)*)(i8* getelementptr inbounds ([14 x i8]* @.str, i32 0, i32 0)) ; [#uses=0]
+ br label %return
+
+return: ; preds = %entry
+ ret void
+}
+
+; [#uses=1]
+declare i32 @puts(i8*)
+
+; [#uses=0]
+define i32 @main() {
+entry:
+ call void @othername(i32 5)
+ ret i32 0
+}
diff --git a/tests/cases/aliasbitcast3.ll b/tests/cases/aliasbitcast3.ll
new file mode 100644
index 00000000..4ff969e3
--- /dev/null
+++ b/tests/cases/aliasbitcast3.ll
@@ -0,0 +1,29 @@
+; ModuleID = '/tmp/emscripten/tmp/src.cpp.o'
+target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
+target triple = "i386-pc-linux-gnu"
+
+@.str = private constant [14 x i8] c"hello, world!\00", align 1 ; [#uses=1]
+
+@thriceremoved = alias bitcast (void ()* @twiceremoved to void (i32)*) ; [#uses=1]
+@othername = alias bitcast (void ()* @original to void (i32)*) ; [#uses=1]
+@twiceremoved = alias bitcast (void (i32)* @othername to void ()*) ; [#uses=1]
+
+; [#uses=2]
+define void @original() {
+entry:
+ %0 = call i32 bitcast (i32 (i8*)* @puts to i32 (i32*)*)(i8* getelementptr inbounds ([14 x i8]* @.str, i32 0, i32 0)) ; [#uses=0]
+ br label %return
+
+return: ; preds = %entry
+ ret void
+}
+
+; [#uses=1]
+declare i32 @puts(i8*)
+
+; [#uses=0]
+define i32 @main() {
+entry:
+ call void @thriceremoved()
+ ret i32 0
+}
diff --git a/tests/cases/i64toi8star.ll b/tests/cases/i64toi8star.ll
new file mode 100644
index 00000000..53a31d02
--- /dev/null
+++ b/tests/cases/i64toi8star.ll
@@ -0,0 +1,32 @@
+; ModuleID = '/tmp/emscripten/tmp/src.cpp.o'
+target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
+target triple = "i386-pc-linux-gnu"
+
+@.str = private constant [14 x i8] c"hello, world!\00", align 1 ; [#uses=1]
+@.str2 = private unnamed_addr constant [9 x i8] c"*%d...*\0A\00", align 1 ; [#uses=1 type=[9 x i8]*]
+
+; [#uses=1]
+declare i32 @puts(i8*)
+
+declare i32 @printf(i8* nocapture, ...) nounwind
+
+define i32 @PyLong_FromVoidPtr(i8* %p) nounwind {
+entry:
+ %call = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([9 x i8]* @.str2, i32 0, i32 0), i8* %p) ; [#uses=0]
+ br label %return
+
+return: ; preds = %entry
+ ret i32 0
+}
+
+; [#uses=0]
+define i32 @main() {
+entry:
+ %retval = alloca i32 ; [#uses=2]
+ %0 = alloca i32 ; [#uses=2]
+ %"alloca point" = bitcast i32 0 to i32 ; [#uses=0]
+ %5 = call i32 @PyLong_FromVoidPtr(i8* null) nounwind ; [#uses=0]
+ %13 = call i32 @PyLong_FromVoidPtr(i8* inttoptr (i64 1 to i8*)) nounwind ; [#uses=0]
+ %0 = call i32 bitcast (i32 (i8*)* @puts to i32 (i32*)*)(i8* getelementptr inbounds ([14 x i8]* @.str, i32 0, i32 0)) ; [#uses=0]
+ ret i32 0
+}
diff --git a/tests/cases/i64toi8star.txt b/tests/cases/i64toi8star.txt
new file mode 100644
index 00000000..286b2451
--- /dev/null
+++ b/tests/cases/i64toi8star.txt
@@ -0,0 +1,3 @@
+*0...*
+*1...*
+hello, world!
diff --git a/tests/gl/sdl_ogl.c b/tests/gl/sdl_ogl.c
index 829213d8..6f81c7ff 100644
--- a/tests/gl/sdl_ogl.c
+++ b/tests/gl/sdl_ogl.c
@@ -11,12 +11,24 @@
/*
Combined with opengl.org tutorial #2,
http://www.opengl.org/wiki/Tutorial2:_VAOs,_VBOs,_Vertex_and_Fragment_Shaders_%28C_/_SDL%29
+
+ Build with
+
+ gcc sdl_ogl.c -lSDL -lGL
+
+ g++ will fail!
+
+ Or, to JS:
+
+ ~/Dev/emscripten/tools/emmaken.py sdl_ogl.c -o sdl_ogl.o
+ ~/Dev/emscripten/emscripten.py sdl_ogl.o > sdl_ogl.js
*/
#include "SDL/SDL.h"
#include "SDL/SDL_opengl.h"
#include <stdio.h>
+#include <stdlib.h>
char* filetobuf(char *file)
{
diff --git a/tests/openjpeg/opj_config.h b/tests/openjpeg/opj_config.h
new file mode 100644
index 00000000..1996a415
--- /dev/null
+++ b/tests/openjpeg/opj_config.h
@@ -0,0 +1,22 @@
+/* create config.h for CMake */
+#define PACKAGE_VERSION "1.4.0"
+#
+#define HAVE_INTTYPES_H 1
+#define HAVE_MEMORY_H 1
+#define HAVE_STDINT_H 1
+#define HAVE_STDLIB_H 1
+#define HAVE_STRINGS_H 1
+#define HAVE_STRING_H 1
+#define HAVE_SYS_STAT_H 1
+#define HAVE_SYS_TYPES_H 1
+#define HAVE_UNISTD_H 1
+#define HAVE_LIBPNG 1
+#define HAVE_PNG_H 1
+#define HAVE_LIBTIFF 1
+#define HAVE_TIFF_H 1
+#
+/* #undef HAVE_LIBLCMS1 */
+/* #undef HAVE_LIBLCMS2 */
+/* #undef HAVE_LCMS1_H */
+/* #undef HAVE_LCMS2_H */
+#
diff --git a/tests/parseInt/output.txt b/tests/parseInt/output.txt
index f487db74..e345e2ac 100644
--- a/tests/parseInt/output.txt
+++ b/tests/parseInt/output.txt
@@ -1,6 +1,6 @@
strtol("-9223372036854775809") = -2147483648
ERR 34
-strtoll("-9223372036854775809") = -9223372036854776000
+strtoll("-9223372036854775809") = 9223372036854776000
ERR 34
strtoul("-9223372036854775809") = 4294967295
ERR 34
@@ -8,7 +8,7 @@ strtoull("-9223372036854775809") = 9223372036854774000
strtol("-9223372036854775808") = -2147483648
ERR 34
-strtoll("-9223372036854775808") = -9223372036854776000
+strtoll("-9223372036854775808") = 9223372036854776000
ERR 34
strtoul("-9223372036854775808") = 4294967295
ERR 34
@@ -16,7 +16,7 @@ strtoull("-9223372036854775808") = 9223372036854774000
strtol("-9223372036854775807") = -2147483648
ERR 34
-strtoll("-9223372036854775807") = -9223372036854776000
+strtoll("-9223372036854775807") = 9223372036854776000
ERR 34
strtoul("-9223372036854775807") = 4294967295
ERR 34
@@ -24,7 +24,7 @@ strtoull("-9223372036854775807") = 9223372036854774000
strtol("-2147483649") = -2147483648
ERR 34
-strtoll("-2147483649") = -2147483649
+strtoll("-2147483649") = -2147483648
strtoul("-2147483649") = 2147483647
strtoull("-2147483649") = 18446744071562068000
@@ -34,19 +34,19 @@ strtoul("-2147483648") = 2147483648
strtoull("-2147483648") = 18446744071562068000
strtol("-2147483647") = -2147483647
-strtoll("-2147483647") = -2147483647
+strtoll("-2147483647") = -2147483648
strtoul("-2147483647") = 2147483649
strtoull("-2147483647") = 18446744071562068000
strtol("-5") = -5
-strtoll("-5") = -5
+strtoll("-5") = 0
strtoul("-5") = 4294967291
-strtoull("-5") = 18446744073709552000
+strtoull("-5") = 18446744069414584000
strtol("-1") = -1
-strtoll("-1") = -1
+strtoll("-1") = 0
strtoul("-1") = 4294967295
-strtoull("-1") = 18446744073709552000
+strtoull("-1") = 18446744069414584000
strtol("0") = 0
strtoll("0") = 0
@@ -104,7 +104,7 @@ strtoll("18446744073709551614") = 9223372036854776000
ERR 34
strtoul("18446744073709551614") = 4294967295
ERR 34
-strtoull("18446744073709551614") = 18446744073709552000
+strtoull("18446744073709551614") = 18446744069414584000
strtol("18446744073709551615") = 2147483647
ERR 34
@@ -112,7 +112,7 @@ strtoll("18446744073709551615") = 9223372036854776000
ERR 34
strtoul("18446744073709551615") = 4294967295
ERR 34
-strtoull("18446744073709551615") = 18446744073709552000
+strtoull("18446744073709551615") = 18446744069414584000
strtol("18446744073709551616") = 2147483647
ERR 34
@@ -120,7 +120,7 @@ strtoll("18446744073709551616") = 9223372036854776000
ERR 34
strtoul("18446744073709551616") = 4294967295
ERR 34
-strtoull("18446744073709551616") = 18446744073709552000
+strtoull("18446744073709551616") = 18446744069414584000
strtol("0x12", 0, 0) = 18
strtol("0x12", 0, 10) = 0
diff --git a/tests/printf/output_i64_1.txt b/tests/printf/output_i64_1.txt
new file mode 100644
index 00000000..775f3f8d
--- /dev/null
+++ b/tests/printf/output_i64_1.txt
@@ -0,0 +1,8278 @@
+ab1.23cd
+n=7
+
+Characters: a A
+Decimals: 1977 650000 12 4
+Preceding with blanks: 1977
+Preceding with zeros: 0000001977
+Some different radixes: 100 64 144 0x64 0144
+floats: 3.14 +3e+00 3.141600E+00
+Width trick: 10
+A string %
+Null string: (null)
+Null pointer: (nil)
+inf
+INF
+-inf
+-INF
+nan
+NAN
+ nan
+nan
+ nan
+nan
+ inf
+-inf
+in%3.5valid
+123
+456
+0
+0
+0.0
+0.00
+0.00000
+1
+1
+1.0
+1.00
+1.00000
+1
+12
+123
+1234
+12345
+123456
+1.23457e+06
+1.23457e+07
+1.23457e+08
+1.23457e+09
+1.23457e+10
+1.23457e+11
+1.23457e+12
+1.23457e+13
+1.23457e+14
+1.23457e+15
+1.23457e+16
+1.23457e+17
+1.23457e+26
+1.12346
+12.1235
+123.123
+1234.12
+12345.1
+123456
+1.23457e+06
+1.23457e+07
+1.23457e+17
+ 1
+ 12
+ 123
+ 1234
+ 12345
+1.2346e+05
+1.2346e+06
+1.2346e+07
+1.2346e+08
+1.2346e+09
+1.2346e+10
+1.2346e+11
+1.2346e+12
+1.2346e+13
+1.2346e+14
+1.2346e+15
+1.2346e+16
+1.2346e+17
+1.2346e+26
+ 1.1235
+ 12.123
+ 123.12
+ 1234.1
+ 12345
+1.2346e+05
+1.2346e+06
+1.2346e+07
+1.2346e+17
+1.
+1.e+01
+1.e+02
+1.e+03
+1.e+04
+1.e+05
+1.e+06
+1.e+07
+1.e+08
+1.e+09
+1.e+10
+1.e+11
+1.e+12
+1.e+13
+1.e+14
+1.e+15
+1.e+16
+1.e+17
+1.e+26
+1.
+1.e+01
+1.e+02
+1.e+03
+1.e+04
+1.e+05
+1.e+06
+1.e+07
+1.e+17
+1e-10
+1.2e-09
+1.23e-08
+1.234e-07
+1.2345e-06
+1.23456e-05
+0.000123457
+0.00123457
+0.0123457
+ 1e-10
+ 1.2e-09
+ 1.23e-08
+ 1.234e-07
+1.2345e-06
+1.2346e-05
+0.00012346
+ 0.0012346
+ 0.012346
+1.e-10
+1.e-09
+1.e-08
+1.e-07
+1.e-06
+1.e-05
+0.0001
+0.001
+0
+0.123
+0.123457
+ 0
+ 0.123
+ 0.12346
+0.
+0.1
+0.1
+
+%+d : +8127534
+%+.d : +8127534
+%+.0d : +8127534
+%+.1d : +8127534
+%+.2d : +8127534
+%+.5d : +8127534
+%+.10d : +0008127534
+%+.30d : +000000000000000000000008127534
+%+0d : +8127534
+%+1d : +8127534
+%+1.d : +8127534
+%+1.0d : +8127534
+%+1.1d : +8127534
+%+1.2d : +8127534
+%+1.5d : +8127534
+%+1.10d : +0008127534
+%+1.30d : +000000000000000000000008127534
+%+2d : +8127534
+%+2.d : +8127534
+%+2.0d : +8127534
+%+2.1d : +8127534
+%+2.2d : +8127534
+%+2.5d : +8127534
+%+2.10d : +0008127534
+%+2.30d : +000000000000000000000008127534
+%+5d : +8127534
+%+5.d : +8127534
+%+5.0d : +8127534
+%+5.1d : +8127534
+%+5.2d : +8127534
+%+5.5d : +8127534
+%+5.10d : +0008127534
+%+5.30d : +000000000000000000000008127534
+%+10d : +8127534
+%+10.d : +8127534
+%+10.0d : +8127534
+%+10.1d : +8127534
+%+10.2d : +8127534
+%+10.5d : +8127534
+%+10.10d : +0008127534
+%+10.30d : +000000000000000000000008127534
+%+30d : +8127534
+%+30.d : +8127534
+%+30.0d : +8127534
+%+30.1d : +8127534
+%+30.2d : +8127534
+%+30.5d : +8127534
+%+30.10d : +0008127534
+%+30.30d : +000000000000000000000008127534
+%-d : 8127534
+%-.d : 8127534
+%-.0d : 8127534
+%-.1d : 8127534
+%-.2d : 8127534
+%-.5d : 8127534
+%-.10d : 0008127534
+%-.30d : 000000000000000000000008127534
+%-1d : 8127534
+%-1.d : 8127534
+%-1.0d : 8127534
+%-1.1d : 8127534
+%-1.2d : 8127534
+%-1.5d : 8127534
+%-1.10d : 0008127534
+%-1.30d : 000000000000000000000008127534
+%-2d : 8127534
+%-2.d : 8127534
+%-2.0d : 8127534
+%-2.1d : 8127534
+%-2.2d : 8127534
+%-2.5d : 8127534
+%-2.10d : 0008127534
+%-2.30d : 000000000000000000000008127534
+%-5d : 8127534
+%-5.d : 8127534
+%-5.0d : 8127534
+%-5.1d : 8127534
+%-5.2d : 8127534
+%-5.5d : 8127534
+%-5.10d : 0008127534
+%-5.30d : 000000000000000000000008127534
+%-10d : 8127534
+%-10.d : 8127534
+%-10.0d : 8127534
+%-10.1d : 8127534
+%-10.2d : 8127534
+%-10.5d : 8127534
+%-10.10d : 0008127534
+%-10.30d : 000000000000000000000008127534
+%-30d : 8127534
+%-30.d : 8127534
+%-30.0d : 8127534
+%-30.1d : 8127534
+%-30.2d : 8127534
+%-30.5d : 8127534
+%-30.10d : 0008127534
+%-30.30d : 000000000000000000000008127534
+%0d : 8127534
+%01d : 8127534
+%02d : 8127534
+%05d : 8127534
+%010d : 0008127534
+%030d : 000000000000000000000008127534
+%-+d : +8127534
+%-+.d : +8127534
+%-+.0d : +8127534
+%-+.1d : +8127534
+%-+.2d : +8127534
+%-+.5d : +8127534
+%-+.10d : +0008127534
+%-+.30d : +000000000000000000000008127534
+%-+1d : +8127534
+%-+1.d : +8127534
+%-+1.0d : +8127534
+%-+1.1d : +8127534
+%-+1.2d : +8127534
+%-+1.5d : +8127534
+%-+1.10d : +0008127534
+%-+1.30d : +000000000000000000000008127534
+%-+2d : +8127534
+%-+2.d : +8127534
+%-+2.0d : +8127534
+%-+2.1d : +8127534
+%-+2.2d : +8127534
+%-+2.5d : +8127534
+%-+2.10d : +0008127534
+%-+2.30d : +000000000000000000000008127534
+%-+5d : +8127534
+%-+5.d : +8127534
+%-+5.0d : +8127534
+%-+5.1d : +8127534
+%-+5.2d : +8127534
+%-+5.5d : +8127534
+%-+5.10d : +0008127534
+%-+5.30d : +000000000000000000000008127534
+%-+10d : +8127534
+%-+10.d : +8127534
+%-+10.0d : +8127534
+%-+10.1d : +8127534
+%-+10.2d : +8127534
+%-+10.5d : +8127534
+%-+10.10d : +0008127534
+%-+10.30d : +000000000000000000000008127534
+%-+30d : +8127534
+%-+30.d : +8127534
+%-+30.0d : +8127534
+%-+30.1d : +8127534
+%-+30.2d : +8127534
+%-+30.5d : +8127534
+%-+30.10d : +0008127534
+%-+30.30d : +000000000000000000000008127534
+%+0d : +8127534
+%+01d : +8127534
+%+02d : +8127534
+%+05d : +8127534
+%+010d : +008127534
+%+030d : +00000000000000000000008127534
+%+-d : +8127534
+%+-.d : +8127534
+%+-.0d : +8127534
+%+-.1d : +8127534
+%+-.2d : +8127534
+%+-.5d : +8127534
+%+-.10d : +0008127534
+%+-.30d : +000000000000000000000008127534
+%+-1d : +8127534
+%+-1.d : +8127534
+%+-1.0d : +8127534
+%+-1.1d : +8127534
+%+-1.2d : +8127534
+%+-1.5d : +8127534
+%+-1.10d : +0008127534
+%+-1.30d : +000000000000000000000008127534
+%+-2d : +8127534
+%+-2.d : +8127534
+%+-2.0d : +8127534
+%+-2.1d : +8127534
+%+-2.2d : +8127534
+%+-2.5d : +8127534
+%+-2.10d : +0008127534
+%+-2.30d : +000000000000000000000008127534
+%+-5d : +8127534
+%+-5.d : +8127534
+%+-5.0d : +8127534
+%+-5.1d : +8127534
+%+-5.2d : +8127534
+%+-5.5d : +8127534
+%+-5.10d : +0008127534
+%+-5.30d : +000000000000000000000008127534
+%+-10d : +8127534
+%+-10.d : +8127534
+%+-10.0d : +8127534
+%+-10.1d : +8127534
+%+-10.2d : +8127534
+%+-10.5d : +8127534
+%+-10.10d : +0008127534
+%+-10.30d : +000000000000000000000008127534
+%+-30d : +8127534
+%+-30.d : +8127534
+%+-30.0d : +8127534
+%+-30.1d : +8127534
+%+-30.2d : +8127534
+%+-30.5d : +8127534
+%+-30.10d : +0008127534
+%+-30.30d : +000000000000000000000008127534
+%+0d : +8127534
+%+01d : +8127534
+%+02d : +8127534
+%+05d : +8127534
+%+010d : +008127534
+%+030d : +00000000000000000000008127534
+%+i : +8127534
+%+.i : +8127534
+%+.0i : +8127534
+%+.1i : +8127534
+%+.2i : +8127534
+%+.5i : +8127534
+%+.10i : +0008127534
+%+.30i : +000000000000000000000008127534
+%+0i : +8127534
+%+1i : +8127534
+%+1.i : +8127534
+%+1.0i : +8127534
+%+1.1i : +8127534
+%+1.2i : +8127534
+%+1.5i : +8127534
+%+1.10i : +0008127534
+%+1.30i : +000000000000000000000008127534
+%+2i : +8127534
+%+2.i : +8127534
+%+2.0i : +8127534
+%+2.1i : +8127534
+%+2.2i : +8127534
+%+2.5i : +8127534
+%+2.10i : +0008127534
+%+2.30i : +000000000000000000000008127534
+%+5i : +8127534
+%+5.i : +8127534
+%+5.0i : +8127534
+%+5.1i : +8127534
+%+5.2i : +8127534
+%+5.5i : +8127534
+%+5.10i : +0008127534
+%+5.30i : +000000000000000000000008127534
+%+10i : +8127534
+%+10.i : +8127534
+%+10.0i : +8127534
+%+10.1i : +8127534
+%+10.2i : +8127534
+%+10.5i : +8127534
+%+10.10i : +0008127534
+%+10.30i : +000000000000000000000008127534
+%+30i : +8127534
+%+30.i : +8127534
+%+30.0i : +8127534
+%+30.1i : +8127534
+%+30.2i : +8127534
+%+30.5i : +8127534
+%+30.10i : +0008127534
+%+30.30i : +000000000000000000000008127534
+%-i : 8127534
+%-.i : 8127534
+%-.0i : 8127534
+%-.1i : 8127534
+%-.2i : 8127534
+%-.5i : 8127534
+%-.10i : 0008127534
+%-.30i : 000000000000000000000008127534
+%-1i : 8127534
+%-1.i : 8127534
+%-1.0i : 8127534
+%-1.1i : 8127534
+%-1.2i : 8127534
+%-1.5i : 8127534
+%-1.10i : 0008127534
+%-1.30i : 000000000000000000000008127534
+%-2i : 8127534
+%-2.i : 8127534
+%-2.0i : 8127534
+%-2.1i : 8127534
+%-2.2i : 8127534
+%-2.5i : 8127534
+%-2.10i : 0008127534
+%-2.30i : 000000000000000000000008127534
+%-5i : 8127534
+%-5.i : 8127534
+%-5.0i : 8127534
+%-5.1i : 8127534
+%-5.2i : 8127534
+%-5.5i : 8127534
+%-5.10i : 0008127534
+%-5.30i : 000000000000000000000008127534
+%-10i : 8127534
+%-10.i : 8127534
+%-10.0i : 8127534
+%-10.1i : 8127534
+%-10.2i : 8127534
+%-10.5i : 8127534
+%-10.10i : 0008127534
+%-10.30i : 000000000000000000000008127534
+%-30i : 8127534
+%-30.i : 8127534
+%-30.0i : 8127534
+%-30.1i : 8127534
+%-30.2i : 8127534
+%-30.5i : 8127534
+%-30.10i : 0008127534
+%-30.30i : 000000000000000000000008127534
+%0i : 8127534
+%01i : 8127534
+%02i : 8127534
+%05i : 8127534
+%010i : 0008127534
+%030i : 000000000000000000000008127534
+%-+i : +8127534
+%-+.i : +8127534
+%-+.0i : +8127534
+%-+.1i : +8127534
+%-+.2i : +8127534
+%-+.5i : +8127534
+%-+.10i : +0008127534
+%-+.30i : +000000000000000000000008127534
+%-+1i : +8127534
+%-+1.i : +8127534
+%-+1.0i : +8127534
+%-+1.1i : +8127534
+%-+1.2i : +8127534
+%-+1.5i : +8127534
+%-+1.10i : +0008127534
+%-+1.30i : +000000000000000000000008127534
+%-+2i : +8127534
+%-+2.i : +8127534
+%-+2.0i : +8127534
+%-+2.1i : +8127534
+%-+2.2i : +8127534
+%-+2.5i : +8127534
+%-+2.10i : +0008127534
+%-+2.30i : +000000000000000000000008127534
+%-+5i : +8127534
+%-+5.i : +8127534
+%-+5.0i : +8127534
+%-+5.1i : +8127534
+%-+5.2i : +8127534
+%-+5.5i : +8127534
+%-+5.10i : +0008127534
+%-+5.30i : +000000000000000000000008127534
+%-+10i : +8127534
+%-+10.i : +8127534
+%-+10.0i : +8127534
+%-+10.1i : +8127534
+%-+10.2i : +8127534
+%-+10.5i : +8127534
+%-+10.10i : +0008127534
+%-+10.30i : +000000000000000000000008127534
+%-+30i : +8127534
+%-+30.i : +8127534
+%-+30.0i : +8127534
+%-+30.1i : +8127534
+%-+30.2i : +8127534
+%-+30.5i : +8127534
+%-+30.10i : +0008127534
+%-+30.30i : +000000000000000000000008127534
+%+0i : +8127534
+%+01i : +8127534
+%+02i : +8127534
+%+05i : +8127534
+%+010i : +008127534
+%+030i : +00000000000000000000008127534
+%+-i : +8127534
+%+-.i : +8127534
+%+-.0i : +8127534
+%+-.1i : +8127534
+%+-.2i : +8127534
+%+-.5i : +8127534
+%+-.10i : +0008127534
+%+-.30i : +000000000000000000000008127534
+%+-1i : +8127534
+%+-1.i : +8127534
+%+-1.0i : +8127534
+%+-1.1i : +8127534
+%+-1.2i : +8127534
+%+-1.5i : +8127534
+%+-1.10i : +0008127534
+%+-1.30i : +000000000000000000000008127534
+%+-2i : +8127534
+%+-2.i : +8127534
+%+-2.0i : +8127534
+%+-2.1i : +8127534
+%+-2.2i : +8127534
+%+-2.5i : +8127534
+%+-2.10i : +0008127534
+%+-2.30i : +000000000000000000000008127534
+%+-5i : +8127534
+%+-5.i : +8127534
+%+-5.0i : +8127534
+%+-5.1i : +8127534
+%+-5.2i : +8127534
+%+-5.5i : +8127534
+%+-5.10i : +0008127534
+%+-5.30i : +000000000000000000000008127534