diff --git a/src/lisp/os-common.c b/src/lisp/os-common.c
index 183d80882f4431565a326aa0b65a0156c3bda805..ab82d3688167068d5bd40254eeed8af66d6d4eb9 100755
--- a/src/lisp/os-common.c
+++ b/src/lisp/os-common.c
@@ -221,7 +221,7 @@ os_foreign_linkage_init(void)
         }
 #endif        
 	if (i == 0) {
-#if defined(sparc)
+#if defined(sparc) || (defined(DARWIN) && defined(__ppc__))
             if (type != LINKAGE_CODE_TYPE || strcmp(c_symbol_name, EXTERN_ALIEN_NAME("call_into_c"))) {
 		fprintf(stderr, "linkage_data is %s but expected %s\n",
 			c_symbol_name,
@@ -229,14 +229,6 @@ os_foreign_linkage_init(void)
 		lose("First element of linkage_data is bogus.\n");
 	    }
 	    arch_make_linkage_entry(i, (void*) call_into_c, 1);
-#elif (defined(DARWIN) && defined(__ppc__))
-	    if (type != 1 || strcmp(c_symbol_name, EXTERN_ALIEN_NAME("call_into_c"))) {
-		fprintf(stderr, "linkage_data is %s but expected %s\n",
-			c_symbol_name,
-                        EXTERN_ALIEN_NAME("call_into_c"));
-		lose("First element of linkage_data is bogus.\n");
-	    }
-	    arch_make_linkage_entry(i, &call_into_c, 1);
 #else
 	    if (type != LINKAGE_CODE_TYPE || strcmp(c_symbol_name,
                                                     EXTERN_ALIEN_NAME("resolve_linkage_tramp"))) {