diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 280cc467bdd7be2ee2dd9e6ae50ca9516516366f..9f288603403e64e763224931f15c9406f65331a9 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,7 @@
+2007-12-11  Aldy Hernandez  <aldyh@redhat.com>
+
+	* decl.c (add_global_entry): Make type unsigned.
+
 2007-12-11  Bernhard Fischer  <aldot@gcc.gnu.org>
 
 	* decl.c (match_prefix): Make seen_type a boolean.
diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c
index 0df18582ccd9afeb3281845f32bfe83bd09ca451..4c722777af2c30417e8e41686bfccff90061f04d 100644
--- a/gcc/fortran/decl.c
+++ b/gcc/fortran/decl.c
@@ -4334,7 +4334,7 @@ static bool
 add_global_entry (const char *name, int sub)
 {
   gfc_gsymbol *s;
-  int type;
+  unsigned int type;
 
   s = gfc_get_gsymbol(name);
   type = sub ? GSYM_SUBROUTINE : GSYM_FUNCTION;