diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index edf4919f3b7711a544557625d30437dbddf953a4..a72caeabc9543b96a1a3469a3872bd1cb8983529 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,9 @@
+2004-05-27  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
+
+	PR fortran/15234
+	* intrinsics/associated.c: Remove enum.
+	(associated): Replace TRUE/FALSE by 1/0.
+
 2004-05-23  Steven G. Kargl  <kargls@comcast.net>
 
 	* random.c (random_seed): Use correct variable.
diff --git a/libgfortran/intrinsics/associated.c b/libgfortran/intrinsics/associated.c
index ba52a205d12605cc055b81d72843b7a2e8efd071..e7805f1ee135c3e185fdc46ceb3d6264239bf4cf 100644
--- a/libgfortran/intrinsics/associated.c
+++ b/libgfortran/intrinsics/associated.c
@@ -23,8 +23,6 @@ Boston, MA 02111-1307, USA.  */
 
 #define associated prefix(associated)
 
-enum { FALSE = 0, TRUE = 1 };
-
 
 GFC_LOGICAL_4
 associated (const gfc_array_void *pointer, const gfc_array_void *target)
@@ -32,19 +30,19 @@ associated (const gfc_array_void *pointer, const gfc_array_void *target)
   int n, rank;
 
   if (GFC_DESCRIPTOR_DATA (pointer) != GFC_DESCRIPTOR_DATA (target))
-    return FALSE;
+    return 0;
   if (GFC_DESCRIPTOR_DTYPE (pointer) != GFC_DESCRIPTOR_DTYPE (target))
-    return FALSE;
+    return 0;
 
   rank = GFC_DESCRIPTOR_RANK (pointer);
   for (n = 0; n < rank; n++)
     {
       if (pointer->dim[n].stride != target->dim[n].stride)
-        return FALSE;
+        return 0;
       if ((pointer->dim[n].ubound - pointer->dim[n].lbound)
           != (target->dim[n].ubound - target->dim[n].lbound))
-        return FALSE;
+        return 0;
     }
 
-  return  TRUE;
+  return 1;
 }