diff -u -r --new-file gcc-msp430.orig/gcc-msp430-4.6.3~mspgcc-20120406/debian/own-patch/patch-gcc_cp_cfns.h gcc-msp430/gcc-msp430-4.6.3~mspgcc-20120406/debian/own-patch/patch-gcc_cp_cfns.h
--- gcc-msp430.orig/gcc-msp430-4.6.3~mspgcc-20120406/debian/own-patch/patch-gcc_cp_cfns.h	1970-01-01 00:00:00.000000000 +0000
+++ gcc-msp430/gcc-msp430-4.6.3~mspgcc-20120406/debian/own-patch/patch-gcc_cp_cfns.h	2015-09-08 20:54:20.517728801 +0000
@@ -0,0 +1,21 @@
+--- a/gcc/cp/cfns.h.orig	2009-04-21 19:03:23 UTC
++++ b/gcc/cp/cfns.h
+@@ -53,6 +53,9 @@ __inline
+ static unsigned int hash (const char *, unsigned int);
+ #ifdef __GNUC__
+ __inline
++#ifdef __GNUC_STDC_INLINE__
++__attribute__ ((__gnu_inline__))
++#endif
+ #endif
+ const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+@@ -96,7 +99,7 @@ hash (register const char *str, register
+       400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
+       400, 400, 400, 400, 400, 400, 400
+     };
+-  register int hval = len;
++  register int hval = (int) len;
+ 
+   switch (hval)
+     {
diff -u -r --new-file gcc-msp430.orig/gcc-msp430-4.6.3~mspgcc-20120406/debian/patchlist gcc-msp430/gcc-msp430-4.6.3~mspgcc-20120406/debian/patchlist
--- gcc-msp430.orig/gcc-msp430-4.6.3~mspgcc-20120406/debian/patchlist	2014-08-23 17:37:44.000000000 +0000
+++ gcc-msp430/gcc-msp430-4.6.3~mspgcc-20120406/debian/patchlist	2015-09-08 20:54:51.084487156 +0000
@@ -1,3 +1,4 @@
 ./own-patch/pr54638.diff
 ../msp430-gcc-4.6.3-20120406.patch
 ./own-patch/fram-fuse-blown.diff
+./own-patch/patch-gcc_cp_cfns.h
