[insight/f14/master] * Mon Sep 27 2010 Patrick Monnerat <pm at datasphere.ch> 6.8.1-3 - Patch "gcc45" to fix gcc 4.5 errors

Patrick Monnerat monnerat at fedoraproject.org
Wed Sep 29 10:22:09 UTC 2010


commit 6499bedfbf4bdc0f88a43b2d8a756492fc729003
Author: Patrick Monnerat <pm at datasphere.ch>
Date:   Wed Sep 29 12:21:03 2010 +0200

    * Mon Sep 27 2010 Patrick Monnerat <pm at datasphere.ch> 6.8.1-3
    - Patch "gcc45" to fix gcc 4.5 errors on incompatible enums.
      https://bugzilla.redhat.com/show_bug.cgi?id=631116

 insight-6.8.1-gcc45.patch |   66 +++++++++++++++++++++++++++++++++++++++++++++
 insight.spec              |    9 +++++-
 2 files changed, 74 insertions(+), 1 deletions(-)
---
diff --git a/insight-6.8.1-gcc45.patch b/insight-6.8.1-gcc45.patch
new file mode 100644
index 0000000..f2ea186
--- /dev/null
+++ b/insight-6.8.1-gcc45.patch
@@ -0,0 +1,66 @@
+diff -Naur insight-6.8-1.orig/gdb/ada-lang.c insight-6.8-1.new/gdb/ada-lang.c
+--- insight-6.8-1.orig/gdb/ada-lang.c	2008-02-07 23:27:53.000000000 +0100
++++ insight-6.8-1.new/gdb/ada-lang.c	2010-09-27 19:55:53.000000000 +0200
+@@ -7683,7 +7683,7 @@
+ const char *
+ ada_attribute_name (enum exp_opcode n)
+ {
+-  if (n >= OP_ATR_FIRST && n <= (int) OP_ATR_VAL)
++  if (n >= (enum exp_opcode) OP_ATR_FIRST && n <= (int) OP_ATR_VAL)
+     return attribute_names[n - OP_ATR_FIRST + 1];
+   else
+     return attribute_names[0];
+@@ -8183,7 +8183,7 @@
+       elt = ada_to_fixed_value (unwrap_value (elt));
+     }
+ 
+-  if (exp->elts[*pos].opcode == OP_AGGREGATE)
++  if (exp->elts[*pos].opcode == (enum exp_opcode) OP_AGGREGATE)
+     assign_aggregate (container, elt, exp, pos, EVAL_NORMAL);
+   else
+     value_assign_to_component (container, elt, 
+@@ -8338,7 +8338,7 @@
+     {
+       LONGEST lower, upper;
+       enum exp_opcode op = exp->elts[choice_pos].opcode;
+-      if (op == OP_DISCRETE_RANGE)
++      if (op == (enum exp_opcode) OP_DISCRETE_RANGE)
+ 	{
+ 	  choice_pos += 1;
+ 	  lower = value_as_long (ada_evaluate_subexp (NULL, exp, pos,
+@@ -8537,7 +8537,7 @@
+ 
+     case BINOP_ASSIGN:
+       arg1 = evaluate_subexp (NULL_TYPE, exp, pos, noside);
+-      if (exp->elts[*pos].opcode == OP_AGGREGATE)
++      if (exp->elts[*pos].opcode == (enum exp_opcode) OP_AGGREGATE)
+ 	{
+ 	  arg1 = assign_aggregate (arg1, arg1, exp, pos, noside);
+ 	  if (noside == EVAL_SKIP || noside == EVAL_AVOID_SIDE_EFFECTS)
+@@ -9096,7 +9096,7 @@
+         return value_zero (value_type (arg1), not_lval);
+       else
+         return value_binop (arg1, arg2,
+-                            op == OP_ATR_MIN ? BINOP_MIN : BINOP_MAX);
++                            op == (enum exp_opcode) OP_ATR_MIN ? BINOP_MIN : BINOP_MAX);
+ 
+     case OP_ATR_MODULUS:
+       {
+diff -Naur insight-6.8-1.orig/gdb/cp-name-parser.y insight-6.8-1.new/gdb/cp-name-parser.y
+--- insight-6.8-1.orig/gdb/cp-name-parser.y	2008-01-01 23:53:09.000000000 +0100
++++ insight-6.8-1.new/gdb/cp-name-parser.y	2010-09-27 19:21:11.000000000 +0200
+@@ -1977,12 +1977,12 @@
+   char *str, *prefix = NULL, *buf;
+   size_t err = 0;
+ 
+-  if (result->type == GLOBAL_DESTRUCTORS)
++  if (result->type == (enum demangle_component_type) GLOBAL_DESTRUCTORS)
+     {
+       result = d_left (result);
+       prefix = "global destructors keyed to ";
+     }
+-  else if (result->type == GLOBAL_CONSTRUCTORS)
++  else if (result->type == (enum demangle_component_type) GLOBAL_CONSTRUCTORS)
+     {
+       result = d_left (result);
+       prefix = "global constructors keyed to ";
diff --git a/insight.spec b/insight.spec
index a2397a4..a1c806b 100644
--- a/insight.spec
+++ b/insight.spec
@@ -2,7 +2,7 @@
 
 Name:		insight
 Version:	%(echo %{ver} | tr - .)
-Release:	2%{?dist}
+Release:	3%{?dist}
 Summary:	Graphical debugger based on GDB
 License:	GPLv3+
 Group:		Development/Debuggers
@@ -26,6 +26,7 @@ Patch13:	insight-6.8-doubleinstall.patch
 Patch14:	insight-6.8-readline6.patch
 Patch15:	insight-6.8.1-baseclassfield.patch
 Patch16:	insight-6.8.1-sbrk.patch
+Patch17:	insight-6.8.1-gcc45.patch
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root
 Requires:	iwidgets
 BuildRequires:	tcl-devel
@@ -40,6 +41,7 @@ BuildRequires:	ImageMagick
 BuildRequires:	desktop-file-utils
 BuildRequires:	automake
 BuildRequires:	autoconf
+BuildRequires:	bison
 
 %description
  Insight is a tight graphical user interface to GDB written in Tcl/Tk.
@@ -69,6 +71,7 @@ GDB version 6.x.
 %patch14 -p1 -b .readline6
 %patch15 -p1 -b .baseclassfield
 %patch16 -p1 -b .sbrk
+%patch17 -p1 -b .gcc45
 
 
 #-------------------------------------------------------------------------------
@@ -224,6 +227,10 @@ rm -rf "${RPM_BUILD_ROOT}"
 %changelog
 #-------------------------------------------------------------------------------
 
+* Mon Sep 27 2010 Patrick Monnerat <pm at datasphere.ch> 6.8.1-3
+- Patch "gcc45" to fix gcc 4.5 errors on incompatible enums.
+  https://bugzilla.redhat.com/show_bug.cgi?id=631116
+
 * Wed Jan 13 2010 Patrick Monnerat <pm at datasphere.ch> 6.8.1-2
 - Patch "sbrk" to enable sbrk() prototype on F13.
 


More information about the scm-commits mailing list