diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0ea99f4a55ef03553943bdec5205d984a510a020..e8b77275bbd0caa53cacec833f761b643e424553 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-06-24  Ulrich Weigand  <uweigand@de.ibm.com>
+
+	* c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
+	* system.h (DEFAULT_MAIN_RETURN): Poison.
+	* doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation.
+
 2004-06-24  Ben Elliston  <bje@au.ibm.com>
 
 	* doc/cfg.texi (Edges): Fix typo.
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 1f0db19e697a677f6db4d8ab9c0baf4cc7050d50..f3170207a0e7ae2b18dcd736cf59aac3744def06 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -6240,13 +6240,8 @@ finish_function (void)
 	}
       else
 	{
-#ifdef DEFAULT_MAIN_RETURN
-	  /* Make it so that `main' always returns success by default.  */
-	  DEFAULT_MAIN_RETURN;
-#else
 	  if (flag_isoc99)
 	    c_finish_return (integer_zero_node);
-#endif
 	}
     }
 
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 70b89f6fa25d6695f76366080935e629fc3a7584..b93941e8771e51247d24061b05bad41699983ad9 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -8956,16 +8956,6 @@ have names that use @samp{.}.  If this macro is defined, these names
 are rewritten to avoid @samp{.}.
 @end defmac
 
-@defmac DEFAULT_MAIN_RETURN
-Define this macro if the target system expects every program's @code{main}
-function to return a standard ``success'' value by default (if no other
-value is explicitly returned).
-
-The definition should be a C statement (sans semicolon) to generate the
-appropriate rtl instructions.  It is used only when compiling the end of
-@code{main}.
-@end defmac
-
 @defmac INSN_SETS_ARE_DELAYED (@var{insn})
 Define this macro as a C expression that is nonzero if it is safe for the
 delay slot scheduler to place instructions in the delay slot of @var{insn},
diff --git a/gcc/system.h b/gcc/system.h
index abbfb41752f948813d53ca9aa6618fbd3b903b3f..1c2bbbe78f7527285172d85fc14671d10abbd6b2 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -617,7 +617,8 @@ extern int snprintf (char *, size_t, const char *, ...);
 	TRADITIONAL_PIPELINE_INTERFACE DFA_PIPELINE_INTERFACE		   \
 	DBX_OUTPUT_STANDARD_TYPES BUILTIN_SETJMP_FRAME_VALUE		   \
 	SUNOS4_SHARED_LIBRARIES PROMOTE_FOR_CALL_ONLY			   \
-	SPACE_AFTER_L_OPTION NO_RECURSIVE_FUNCTION_CSE
+	SPACE_AFTER_L_OPTION NO_RECURSIVE_FUNCTION_CSE			   \
+	DEFAULT_MAIN_RETURN
 
 /* Hooks that are no longer used.  */
  #pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE	\