summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/warn/huge-val1.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/g++.dg/warn/huge-val1.C')
-rw-r--r--gcc/testsuite/g++.dg/warn/huge-val1.C33
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/warn/huge-val1.C b/gcc/testsuite/g++.dg/warn/huge-val1.C
new file mode 100644
index 000000000..2ddfae0c9
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/huge-val1.C
@@ -0,0 +1,33 @@
+// PR c++/23139: HUGE_VAL definition should be accepted with -pedantic.
+// Origin: Joseph Myers <joseph@codesourcery.com>
+// { dg-do link }
+// { dg-options "-pedantic-errors" }
+
+#include <math.h>
+
+double d = HUGE_VAL;
+#ifdef HUGE_VALF
+float f = HUGE_VALF;
+#endif
+#ifdef HUGE_VALL
+long double l = HUGE_VALL;
+#endif
+
+extern void link_failure ();
+
+int
+main ()
+{
+#ifdef __GLIBC__
+ if (HUGE_VAL != __builtin_huge_val ())
+ link_failure ();
+#ifdef HUGE_VALF
+ if (HUGE_VALF != __builtin_huge_valf ())
+ link_failure ();
+#endif
+#ifdef HUGE_VALL
+ if (HUGE_VALL != __builtin_huge_vall ())
+ link_failure ();
+#endif
+#endif
+}