From 1cf49e515c992d4cf4dcbccf0904e8b9e2461820 Mon Sep 17 00:00:00 2001
From: Olivier Hainque <hainque@adacore.com>
Date: Mon, 30 Dec 2019 22:31:37 +0000
Subject: [PATCH] Prevent redefinition of WCHAR_MAX from
 testsuite/gcc.dg/cpp/ucs.c

gcc/testsuite/gcc.dg/cpp/ucs.c #include <limits.h>
and then crafts a definition of WCHAR_MAX depending
on __WCHAR_TYPE__.

The test fails in VxWorks configurations because WCHAR_MAX
is already exposed by the system limits.h.

The patch simply guards the tentative definition
by a check verifying if the macro is defined already, so
we're using the value exposed by limits.h in this case.

2019-12-30  Olivier Hainque  <hainque@adacore.com>

	* testsuite/gcc.dg/cpp/ucs.c: Prevent redefinition
	of WCHAR_MAX if already exposed by limits.h.

From-SVN: r279795
---
 gcc/testsuite/ChangeLog        | 5 +++++
 gcc/testsuite/gcc.dg/cpp/ucs.c | 4 ++++
 2 files changed, 9 insertions(+)

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d894655c8435..809b8a4e6709 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2019-12-20  Olivier Hainque  <hainque@adacore.com>
+
+	* testsuite/gcc.dg/cpp/ucs.c: Prevent redefinition
+	of WCHAR_MAX if already exposed by limits.h.
+
 2019-12-20  Olivier Hainque  <hainque@adacore.com>
            Jerome Lambourg  <lambourg@adacore.com>
 
diff --git a/gcc/testsuite/gcc.dg/cpp/ucs.c b/gcc/testsuite/gcc.dg/cpp/ucs.c
index cac83f3cf149..f52cd5712587 100644
--- a/gcc/testsuite/gcc.dg/cpp/ucs.c
+++ b/gcc/testsuite/gcc.dg/cpp/ucs.c
@@ -16,6 +16,8 @@
 #define short           +2 
 #define long            +3
 
+#if !defined(WCHAR_MAX)
+
 #if __WCHAR_TYPE__ == 0
 # define WCHAR_MAX      INT_MAX
 #elif __WCHAR_TYPE__ == 1
@@ -28,6 +30,8 @@
 # error wacky wchar_t
 #endif
 
+#endif
+
 #undef unsigned
 #undef int
 #undef char
-- 
GitLab