From 010a1adf8d1d5cfcb08326ab2ad4cb1590fceb5b Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Tue, 17 Aug 2004 14:42:24 +0000 Subject: [PATCH] Clifford Wolf: Hotfixes needed for newer binutils, the bug itself is in gcc (see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625 for details) Fixes: firefox, mozilla, thunderbird, vice, ardour, kdegames and koffice [2004081317042923404] (https://www.rocklinux.net/submaster) git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@3896 c5f82cb5-29bc-0310-9cd0-bff59a50e3bc --- .../kde/kdegames/hotfix-binutils-gcc.patch | 20 +++++++ package/kde/koffice/hotfix-binutils-gcc.patch | 34 ++++++++++++ package/misc/vice/hotfix-binutils-gcc.patch | 48 +++++++++++++++++ .../sirkull/ardour/hotfix-binutils-gcc.patch | 49 +++++++++++++++++ package/x11/firefox/hotfix-binutils-gcc.patch | 54 +++++++++++++++++++ package/x11/mozilla/hotfix-binutils-gcc.patch | 54 +++++++++++++++++++ .../x11/thunderbird/hotfix-binutils-gcc.patch | 54 +++++++++++++++++++ 7 files changed, 313 insertions(+) create mode 100644 package/kde/kdegames/hotfix-binutils-gcc.patch create mode 100644 package/kde/koffice/hotfix-binutils-gcc.patch create mode 100644 package/misc/vice/hotfix-binutils-gcc.patch create mode 100644 package/sirkull/ardour/hotfix-binutils-gcc.patch create mode 100644 package/x11/firefox/hotfix-binutils-gcc.patch create mode 100644 package/x11/mozilla/hotfix-binutils-gcc.patch create mode 100644 package/x11/thunderbird/hotfix-binutils-gcc.patch diff --git a/package/kde/kdegames/hotfix-binutils-gcc.patch b/package/kde/kdegames/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..fdceadc28 --- /dev/null +++ b/package/kde/kdegames/hotfix-binutils-gcc.patch @@ -0,0 +1,20 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./libkdegames/kgrid2d.h.orig 2004-08-13 13:52:56.000000000 +0200 ++++ ./libkdegames/kgrid2d.h 2004-08-13 13:54:02.000000000 +0200 +@@ -291,10 +291,14 @@ + case Right: return c + Coord( 1, 0); + case Up: return c + Coord( 0, -1); + case Down: return c + Coord( 0, 1); ++ } ++ switch (n) { + case LeftUp: return c + Coord(-1, -1); + case LeftDown: return c + Coord(-1, 1); + case RightUp: return c + Coord( 1, -1); + case RightDown: return c + Coord( 1, 1); ++ } ++ switch (n) { + case Nb_Neighbour: Q_ASSERT(false); + } + return c; diff --git a/package/kde/koffice/hotfix-binutils-gcc.patch b/package/kde/koffice/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..91b25c97e --- /dev/null +++ b/package/kde/koffice/hotfix-binutils-gcc.patch @@ -0,0 +1,34 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./kchart/kdchart/KDChartEnums.h.orig 2004-08-13 14:23:43.000000000 +0200 ++++ ./kchart/kdchart/KDChartEnums.h 2004-08-13 14:24:41.000000000 +0200 +@@ -279,22 +279,25 @@ + return "TopCenter"; + case PosTopRight: + return "TopRight"; ++ } ++ switch( type ) { + case PosCenterLeft: + return "CenterLeft"; + case PosCenter: + return "Center"; + case PosCenterRight: + return "CenterRight"; ++ } ++ switch( type ) { + case PosBottomLeft: + return "BottomLeft"; + case PosBottomCenter: + return "BottomCenter"; + case PosBottomRight: + return "BottomRight"; +- default: // should not happen +- qDebug( "Unknown content position" ); +- return "TopLeft"; + } ++ qDebug( "Unknown content position" ); ++ return "TopLeft"; + } + + diff --git a/package/misc/vice/hotfix-binutils-gcc.patch b/package/misc/vice/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..4e83a5ca6 --- /dev/null +++ b/package/misc/vice/hotfix-binutils-gcc.patch @@ -0,0 +1,48 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./src/resid/wave.h.orig 2004-08-13 16:25:59.000000000 +0200 ++++ ./src/resid/wave.h 2004-08-13 16:28:16.000000000 +0200 +@@ -462,7 +462,6 @@ + // waveform output; however a switch with inline functions is faster. + + switch (waveform) { +- default: + case 0x0: + return output____(); + case 0x1: +@@ -471,6 +470,8 @@ + return output__S_(); + case 0x3: + return output__ST(); ++ } ++ switch (waveform) { + case 0x4: + return output_P__(); + case 0x5: +@@ -479,6 +480,8 @@ + return output_PS_(); + case 0x7: + return output_PST(); ++ } ++ switch (waveform) { + case 0x8: + return outputN___(); + case 0x9: +@@ -487,6 +490,8 @@ + return outputN_S_(); + case 0xb: + return outputN_ST(); ++ } ++ switch (waveform) { + case 0xc: + return outputNP__(); + case 0xd: +@@ -496,6 +501,7 @@ + case 0xf: + return outputNPST(); + } ++ return output____(); + } + + #endif // RESID_INLINING || defined(__WAVE_CC__) diff --git a/package/sirkull/ardour/hotfix-binutils-gcc.patch b/package/sirkull/ardour/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..d5c5e367c --- /dev/null +++ b/package/sirkull/ardour/hotfix-binutils-gcc.patch @@ -0,0 +1,49 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./libs/pbd/pbd/compose.h.orig 2004-08-13 15:35:23.000000000 +0200 ++++ ./libs/pbd/pbd/compose.h 2004-08-13 15:38:37.000000000 +0200 +@@ -75,39 +75,14 @@ + // helper for converting spec string numbers + inline int char_to_int(char c) + { +- switch (c) { +- case '0': return 0; +- case '1': return 1; +- case '2': return 2; +- case '3': return 3; +- case '4': return 4; +- case '5': return 5; +- case '6': return 6; +- case '7': return 7; +- case '8': return 8; +- case '9': return 9; +- default: return -1000; +- } ++ if ( c >= '0' && c <= '9' ) return c - '0'; ++ return -1000; + } + + inline bool is_number(int n) + { +- switch (n) { +- case '0': +- case '1': +- case '2': +- case '3': +- case '4': +- case '5': +- case '6': +- case '7': +- case '8': +- case '9': +- return true; +- +- default: +- return false; +- } ++ if ( n >= '0' && n <= '9' ) return true; ++ return false; + } + + diff --git a/package/x11/firefox/hotfix-binutils-gcc.patch b/package/x11/firefox/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..d66c7a1d5 --- /dev/null +++ b/package/x11/firefox/hotfix-binutils-gcc.patch @@ -0,0 +1,54 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./content/html/style/src/nsROCSSPrimitiveValue.h.orig 2004-08-13 11:50:44.000000000 +0200 ++++ ./content/html/style/src/nsROCSSPrimitiveValue.h 2004-08-13 11:57:20.000000000 +0200 +@@ -191,27 +191,37 @@ + + void Reset(void) + { +- switch (mType) { +- case CSS_IDENT: ++ // --- see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625 --- ++ // ++ // we can't make a switch statement here because the compiler will create a ++ // jump-table in .ro_data for it and cause a link error such as: ++ // ++ // # .L1035' referenced in section `.rodata' of ++ // # ../../dist/lib/libgkconhtmlstyle_s.a(nsROCSSPrimitiveValue.o): defined in ++ // # discarded section `.gnu.linkonce.t._ZN21nsROCSSPrimitiveValue5ResetEv' of ++ // # ../../dist/lib/libgkconhtmlstyle_s.a(nsROCSSPrimitiveValue.o) ++ // ++ // - clifford (2004-08-13) ++ // ++ if (mType == CSS_IDENT) { + NS_ASSERTION(mValue.mAtom, "Null atom should never happen"); + NS_RELEASE(mValue.mAtom); +- break; +- case CSS_STRING: ++ } ++ if (mType == CSS_STRING) { + NS_ASSERTION(mValue.mString, "Null string should never happen"); + nsMemory::Free(mValue.mString); + mValue.mString = nsnull; +- break; +- case CSS_URI: ++ } ++ if (mType == CSS_URI) { + NS_IF_RELEASE(mValue.mURI); +- break; +- case CSS_RECT: ++ } ++ if (mType == CSS_RECT) { + NS_ASSERTION(mValue.mRect, "Null Rect should never happen"); + NS_RELEASE(mValue.mRect); +- break; +- case CSS_RGBCOLOR: ++ } ++ if (mType == CSS_RGBCOLOR) { + NS_ASSERTION(mValue.mColor, "Null RGBColor should never happen"); + NS_RELEASE(mValue.mColor); +- break; + } + } + diff --git a/package/x11/mozilla/hotfix-binutils-gcc.patch b/package/x11/mozilla/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..d66c7a1d5 --- /dev/null +++ b/package/x11/mozilla/hotfix-binutils-gcc.patch @@ -0,0 +1,54 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./content/html/style/src/nsROCSSPrimitiveValue.h.orig 2004-08-13 11:50:44.000000000 +0200 ++++ ./content/html/style/src/nsROCSSPrimitiveValue.h 2004-08-13 11:57:20.000000000 +0200 +@@ -191,27 +191,37 @@ + + void Reset(void) + { +- switch (mType) { +- case CSS_IDENT: ++ // --- see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625 --- ++ // ++ // we can't make a switch statement here because the compiler will create a ++ // jump-table in .ro_data for it and cause a link error such as: ++ // ++ // # .L1035' referenced in section `.rodata' of ++ // # ../../dist/lib/libgkconhtmlstyle_s.a(nsROCSSPrimitiveValue.o): defined in ++ // # discarded section `.gnu.linkonce.t._ZN21nsROCSSPrimitiveValue5ResetEv' of ++ // # ../../dist/lib/libgkconhtmlstyle_s.a(nsROCSSPrimitiveValue.o) ++ // ++ // - clifford (2004-08-13) ++ // ++ if (mType == CSS_IDENT) { + NS_ASSERTION(mValue.mAtom, "Null atom should never happen"); + NS_RELEASE(mValue.mAtom); +- break; +- case CSS_STRING: ++ } ++ if (mType == CSS_STRING) { + NS_ASSERTION(mValue.mString, "Null string should never happen"); + nsMemory::Free(mValue.mString); + mValue.mString = nsnull; +- break; +- case CSS_URI: ++ } ++ if (mType == CSS_URI) { + NS_IF_RELEASE(mValue.mURI); +- break; +- case CSS_RECT: ++ } ++ if (mType == CSS_RECT) { + NS_ASSERTION(mValue.mRect, "Null Rect should never happen"); + NS_RELEASE(mValue.mRect); +- break; +- case CSS_RGBCOLOR: ++ } ++ if (mType == CSS_RGBCOLOR) { + NS_ASSERTION(mValue.mColor, "Null RGBColor should never happen"); + NS_RELEASE(mValue.mColor); +- break; + } + } + diff --git a/package/x11/thunderbird/hotfix-binutils-gcc.patch b/package/x11/thunderbird/hotfix-binutils-gcc.patch new file mode 100644 index 000000000..d66c7a1d5 --- /dev/null +++ b/package/x11/thunderbird/hotfix-binutils-gcc.patch @@ -0,0 +1,54 @@ +Hotfix needed for new binutils (bug is in gcc) +(see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625) + +--- ./content/html/style/src/nsROCSSPrimitiveValue.h.orig 2004-08-13 11:50:44.000000000 +0200 ++++ ./content/html/style/src/nsROCSSPrimitiveValue.h 2004-08-13 11:57:20.000000000 +0200 +@@ -191,27 +191,37 @@ + + void Reset(void) + { +- switch (mType) { +- case CSS_IDENT: ++ // --- see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625 --- ++ // ++ // we can't make a switch statement here because the compiler will create a ++ // jump-table in .ro_data for it and cause a link error such as: ++ // ++ // # .L1035' referenced in section `.rodata' of ++ // # ../../dist/lib/libgkconhtmlstyle_s.a(nsROCSSPrimitiveValue.o): defined in ++ // # discarded section `.gnu.linkonce.t._ZN21nsROCSSPrimitiveValue5ResetEv' of ++ // # ../../dist/lib/libgkconhtmlstyle_s.a(nsROCSSPrimitiveValue.o) ++ // ++ // - clifford (2004-08-13) ++ // ++ if (mType == CSS_IDENT) { + NS_ASSERTION(mValue.mAtom, "Null atom should never happen"); + NS_RELEASE(mValue.mAtom); +- break; +- case CSS_STRING: ++ } ++ if (mType == CSS_STRING) { + NS_ASSERTION(mValue.mString, "Null string should never happen"); + nsMemory::Free(mValue.mString); + mValue.mString = nsnull; +- break; +- case CSS_URI: ++ } ++ if (mType == CSS_URI) { + NS_IF_RELEASE(mValue.mURI); +- break; +- case CSS_RECT: ++ } ++ if (mType == CSS_RECT) { + NS_ASSERTION(mValue.mRect, "Null Rect should never happen"); + NS_RELEASE(mValue.mRect); +- break; +- case CSS_RGBCOLOR: ++ } ++ if (mType == CSS_RGBCOLOR) { + NS_ASSERTION(mValue.mColor, "Null RGBColor should never happen"); + NS_RELEASE(mValue.mColor); +- break; + } + } +