diff options
Diffstat (limited to 'tests/core')
-rw-r--r-- | tests/core/test_literal_negative_zero.in | 27 | ||||
-rw-r--r-- | tests/core/test_literal_negative_zero.out | 6 |
2 files changed, 33 insertions, 0 deletions
diff --git a/tests/core/test_literal_negative_zero.in b/tests/core/test_literal_negative_zero.in new file mode 100644 index 00000000..1554fbf5 --- /dev/null +++ b/tests/core/test_literal_negative_zero.in @@ -0,0 +1,27 @@ +#include <stdio.h> +#include <math.h> + +static float XXXf = -0.0f; +static double XXXd = -0.0; + +struct x { + float f; + double d; +}; + +static struct x xx[] = { + -0x0p+0, + -0x0p+0, +}; + +int main(int argc, char ** argv) { + float YYYf = -0.0f; + float YYYd = -0.0; + + printf("%.2f\n", XXXf); + printf("%.2f\n", XXXd); + printf("%.2f\n", YYYf); + printf("%.2f\n", YYYd); + printf("%.2f\n", xx->f); + printf("%.2f\n", xx->d); +} diff --git a/tests/core/test_literal_negative_zero.out b/tests/core/test_literal_negative_zero.out new file mode 100644 index 00000000..d1b863b8 --- /dev/null +++ b/tests/core/test_literal_negative_zero.out @@ -0,0 +1,6 @@ +-0.00 +-0.00 +-0.00 +-0.00 +-0.00 +-0.00 |