patches/gcc/4.2.4/200-index_macro.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Fri Nov 04 19:22:29 2011 +0100 (2011-11-04)
changeset 2735 f09ed6dd71a3
parent 687 b2b6b1d46aa1
permissions -rw-r--r--
kernel/linux: fix packed attribute in exported headers

UBI headers (and maybe others as well) are broken because the 'packed'
attribute is not sanitised when the headers are exported to userspace.

Apply the fix from upstream:
https://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=f210735fe2f17a6225432ee3d1239bcf23a8659c

(Also, buildroot does the same, BTW)

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@687
     1
diff -durN gcc-4.2.1.orig/libstdc++-v3/include/ext/rope gcc-4.2.1/libstdc++-v3/include/ext/rope
yann@687
     2
--- gcc-4.2.1.orig/libstdc++-v3/include/ext/rope	2006-10-17 13:56:21.000000000 +0200
yann@687
     3
+++ gcc-4.2.1/libstdc++-v3/include/ext/rope	2007-08-03 20:34:23.000000000 +0200
yann@687
     4
@@ -58,6 +58,9 @@
yann@687
     5
 #include <bits/allocator.h>
yann@687
     6
 #include <ext/hash_fun.h>
yann@687
     7
 
yann@687
     8
+/* cope w/ index defined as macro, SuSv3 proposal */
yann@687
     9
+#undef index
yann@687
    10
+
yann@687
    11
 # ifdef __GC
yann@687
    12
 #   define __GC_CONST const
yann@687
    13
 # else
yann@687
    14
diff -durN gcc-4.2.1.orig/libstdc++-v3/include/ext/ropeimpl.h gcc-4.2.1/libstdc++-v3/include/ext/ropeimpl.h
yann@687
    15
--- gcc-4.2.1.orig/libstdc++-v3/include/ext/ropeimpl.h	2006-10-17 13:56:21.000000000 +0200
yann@687
    16
+++ gcc-4.2.1/libstdc++-v3/include/ext/ropeimpl.h	2007-08-03 20:34:23.000000000 +0200
yann@687
    17
@@ -54,6 +54,9 @@
yann@687
    18
 #include <ext/memory> // For uninitialized_copy_n
yann@687
    19
 #include <ext/numeric> // For power
yann@687
    20
 
yann@687
    21
+/* cope w/ index defined as macro, SuSv3 proposal */
yann@687
    22
+#undef index
yann@687
    23
+
yann@687
    24
 _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
yann@687
    25
 
yann@687
    26
   using std::size_t;