include_next.patch

From: Christian Prochaska <christian.prochaska@genode-labs.com>


---
 include/bits/std_abs.h   |    2 +-
 include/c_global/cmath   |    7 ++++++-
 include/c_global/cstdlib |    7 ++++++-
 3 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/include/bits/std_abs.h b/include/bits/std_abs.h
index 6e4551d..65d50b5 100644
--- a/include/bits/std_abs.h
+++ b/include/bits/std_abs.h
@@ -35,7 +35,7 @@
 #include <bits/c++config.h>
 
 #define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
-#include_next <stdlib.h>
+#include <stdlib.h>
 #ifdef __CORRECT_ISO_CPP_MATH_H_PROTO
 # include_next <math.h>
 #endif
diff --git a/include/c_global/cmath b/include/c_global/cmath
index 4489e17..83f4937 100644
--- a/include/c_global/cmath
+++ b/include/c_global/cmath
@@ -42,7 +42,12 @@
 #include <bits/cpp_type_traits.h>
 #include <ext/type_traits.h>
 #define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
-#include_next <math.h>
+// On Genode, the libc include paths appear before the stdcxx include paths
+// and the original '#include_next' failed. Adding the libc include paths
+// to INC_DIR again did not help, because the duplication was detected
+// and ignored. So, math.h is included with '#include' again, like in
+// previous GCC versions.
+#include <math.h>
 #undef _GLIBCXX_INCLUDE_NEXT_C_HEADERS
 #include <bits/std_abs.h>
 
diff --git a/include/c_global/cstdlib b/include/c_global/cstdlib
index 1033501..e39ed31 100644
--- a/include/c_global/cstdlib
+++ b/include/c_global/cstdlib
@@ -72,7 +72,12 @@ namespace std
 // Need to ensure this finds the C library's <stdlib.h> not a libstdc++
 // wrapper that might already be installed later in the include search path.
 #define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
-#include_next <stdlib.h>
+// On Genode, the libc include paths appear before the stdcxx include paths
+// and the original '#include_next' failed. Adding the libc include paths
+// to INC_DIR again did not help, because the duplication was detected
+// and ignored. So, stdlib.h is included with '#include' again, like in
+// previous GCC versions.
+#include <stdlib.h>
 #undef _GLIBCXX_INCLUDE_NEXT_C_HEADERS
 #include <bits/std_abs.h>
 
