diff --git a/lib/master.pike.in b/lib/master.pike.in
index 197efdeaf99ef6826a0bd09043387b709eb3bcba..d481267808ef551c855168f1454f33bac93070e8 100644
--- a/lib/master.pike.in
+++ b/lib/master.pike.in
@@ -6,7 +6,7 @@
 // Pike is distributed under GPL, LGPL and MPL. See the file COPYING
 // for more information.
 //
-// $Id: master.pike.in,v 1.348 2004/05/25 15:28:53 mast Exp $
+// $Id: master.pike.in,v 1.349 2004/06/13 17:01:54 grubba Exp $
 
 #pike __REAL_VERSION__
 //#pragma strict_types
@@ -1889,16 +1889,6 @@ class CompatResolver
       root_module->fallback_module = fallback_resolver->root_module;
     }
     predefines = initial_predefines;
-
-    // Kludge to avoid(?) recursive compilation problems. It was
-    // observed with a pike program containing
-    //
-    // #if constant (__builtin.security)
-    // #endif
-    //
-    // when using -V7.4. There was a cycle between resolving
-    // lib/modules/__builtin.pmod and lib/7.4/modules/__default.pmod.
-    get_default_module();
   }
 
   //! Add a directory to search for include files.
@@ -3252,7 +3242,9 @@ string describe_object(object o)
       }
     }
   };
-  if(objectp (objects[parent_fun]))
+  // When running with RESOLV_DEBUG this function may
+  // get called before objects has been initialized.
+  if(objects && objectp (objects[parent_fun]))
     if ((s = programs_reverse_lookup (parent_fun)) &&
 	(s=program_path_to_name(s, "", "", "()")))
       return s;
@@ -4377,6 +4369,16 @@ CompatResolver get_compilation_handler(int major, int minor)
 	compat_handler->add_include_path(combine_path(base,"include"));
 #endif
 
+	// Kludge to avoid(?) recursive compilation problems. It was
+	// observed with a pike program containing
+	//
+	// #if constant (__builtin.security)
+	// #endif
+	//
+	// when using -V7.4. There was a cycle between resolving
+	// lib/modules/__builtin.pmod and lib/7.4/modules/__default.pmod.
+	compat_handler->get_default_module();
+
 #ifndef RESOLVER_HACK
 	ret = compat_handler_cache[tmp] = compat_handler;
 #endif