diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 333bfc95e7ddfc164cac1c1f9a27ed856b7b6c57..05cb728c60d8896838650e0a149617a1f736955a 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,11 @@
+2004-09-21  Ziemowit Laski  <zlaski@apple.com>
+
+	* cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Moved here from
+	cp-objcp-common.h.
+	(objcp_tsubst_copy_and_build): Reformat function signature.
+	* cp-objcp-common.h (objcp_tsubst_copy_and_build): Likewise.
+	(LANG_HOOKS_FOLD_OBJ_TYPE_REF): Moved to cp-lang.c.
+
 2004-09-21  Zack Weinberg  <zack@codesourcery.com>
 
 	* parser.c (cp_lexer_peek_token, cp_lexer_consume_token):
diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c
index 3b2590cd498207ba48b5fc640b9164427e88f02c..0e44a084d1ec14c9e4b794f82aca29e52ef532f9 100644
--- a/gcc/cp/cp-lang.c
+++ b/gcc/cp/cp-lang.c
@@ -49,6 +49,8 @@ static int cxx_types_compatible_p (tree, tree);
 #define LANG_HOOKS_DECL_PRINTABLE_NAME	cxx_printable_name
 #undef LANG_HOOKS_TYPES_COMPATIBLE_P
 #define LANG_HOOKS_TYPES_COMPATIBLE_P cxx_types_compatible_p
+#undef LANG_HOOKS_FOLD_OBJ_TYPE_REF
+#define LANG_HOOKS_FOLD_OBJ_TYPE_REF cp_fold_obj_type_ref
 
 /* Each front end provides its own lang hook initializer.  */
 const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER;
@@ -119,8 +121,9 @@ static int cxx_types_compatible_p (tree x, tree y)
 /* The following function does something real, but only in Objective-C++.  */
 
 tree
-objcp_tsubst_copy_and_build (tree t ATTRIBUTE_UNUSED, tree args ATTRIBUTE_UNUSED, 
-			     tsubst_flags_t complain ATTRIBUTE_UNUSED, 
+objcp_tsubst_copy_and_build (tree t ATTRIBUTE_UNUSED,
+			     tree args ATTRIBUTE_UNUSED,
+			     tsubst_flags_t complain ATTRIBUTE_UNUSED,
 			     tree in_decl ATTRIBUTE_UNUSED,
 			     bool function_p ATTRIBUTE_UNUSED)
 {
diff --git a/gcc/cp/cp-objcp-common.h b/gcc/cp/cp-objcp-common.h
index a6ab3832a8fa8fb35b943f9fe425e373ef3a54f3..b093150940541a5e8977b1bd3a5f014975495c65 100644
--- a/gcc/cp/cp-objcp-common.h
+++ b/gcc/cp/cp-objcp-common.h
@@ -33,7 +33,7 @@ extern void cxx_initialize_diagnostics (struct diagnostic_context *);
 
 /* In cp/cp-lang.c and objcp/objcp-lang.c.  */
 
-extern tree objcp_tsubst_copy_and_build (tree, tree, tsubst_flags_t, 
+extern tree objcp_tsubst_copy_and_build (tree, tree, tsubst_flags_t,
 					 tree, bool);
 
 /* Lang hooks that are shared between C++ and ObjC++ are defined here.  Hooks
@@ -158,7 +158,5 @@ extern tree objcp_tsubst_copy_and_build (tree, tree, tsubst_flags_t,
 #define LANG_HOOKS_REGISTER_BUILTIN_TYPE c_register_builtin_type
 #undef LANG_HOOKS_GIMPLIFY_EXPR
 #define LANG_HOOKS_GIMPLIFY_EXPR cp_gimplify_expr
-#undef LANG_HOOKS_FOLD_OBJ_TYPE_REF
-#define LANG_HOOKS_FOLD_OBJ_TYPE_REF cp_fold_obj_type_ref
 
 #endif /* GCC_CP_OBJCP_COMMON */