http://sourceware.org/ml/gdb-patches/2011-07/msg00085.html
	* cli/cli-setshow.c (do_setshow_command): Display var_zinteger
	variables as signed, not unsigned.
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index a01bf0a..f3ba9c7 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2011-07-07  Andrew Burgess  <aburgess@broadcom.com>
+
+	* cli/cli-setshow.c (do_setshow_command): Display var_zinteger
+	variables as signed, not unsigned.
+
 2011-07-06  Joel Brobecker  <brobecker@adacore.com>
 
 	* jit.c (jit_inferior_init): Reformat forward declaration.
diff --git a/gdb/cli/cli-setshow.c b/gdb/cli/cli-setshow.c
index 6acdd91..8dbfaad 100644
--- a/gdb/cli/cli-setshow.c
+++ b/gdb/cli/cli-setshow.c
@@ -358,21 +358,18 @@
 	    }
 	  break;
 	case var_uinteger:
-	  if (*(unsigned int *) c->var == UINT_MAX)
-	    {
-	      fputs_filtered ("unlimited", stb->stream);
-	      break;
-	    }
-	  /* else fall through */
 	case var_zuinteger:
-	case var_zinteger:
-	  fprintf_filtered (stb->stream, "%u", *(unsigned int *) c->var);
+	  if (c->var_type == var_uinteger
+	      && *(unsigned int *) c->var == UINT_MAX)
+	    fputs_filtered ("unlimited", stb->stream);
+	  else
+	    fprintf_filtered (stb->stream, "%u", *(unsigned int *) c->var);
 	  break;
 	case var_integer:
-	  if (*(int *) c->var == INT_MAX)
-	    {
-	      fputs_filtered ("unlimited", stb->stream);
-	    }
+	case var_zinteger:
+	  if (c->var_type == var_integer
+	      && *(int *) c->var == INT_MAX)
+	    fputs_filtered ("unlimited", stb->stream);
 	  else
 	    fprintf_filtered (stb->stream, "%d", *(int *) c->var);
 	  break;