summary refs log tree commit diff stats
path: root/tests/float/tfloat3.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/float/tfloat3.nim')
-rw-r--r--tests/float/tfloat3.nim24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/float/tfloat3.nim b/tests/float/tfloat3.nim
new file mode 100644
index 000000000..4382dd3ed
--- /dev/null
+++ b/tests/float/tfloat3.nim
@@ -0,0 +1,24 @@
+discard """
+  file: "tfloat3.nim"
+  output: "Nimrod    3.4368930843, 0.3299290698 C double: 3.4368930843, 0.3299290698"
+"""
+
+import math, strutils
+
+{.emit: """
+void printFloats(void) {
+    double y = 1.234567890123456789;
+    
+    printf("C double: %.10f, %.10f ", exp(y), cos(y));
+}
+""".}
+
+proc c_printf(frmt: CString) {.importc: "printf", header: "<stdio.h>", varargs.}
+proc printFloats {.importc, nodecl.}
+
+var x: float = 1.234567890123456789
+c_printf("Nimrod    %.10f, %.10f ", exp(x), cos(x))
+printFloats()
+
+
+