Index: generic/nsf.c =================================================================== diff -u -rbedb248602f8940383c0f4a10bb4f99b3a5f2c4f -r4f1c15063fb1597c9e8bd1e92a2f901cf3d73dfb --- generic/nsf.c (.../nsf.c) (revision bedb248602f8940383c0f4a10bb4f99b3a5f2c4f) +++ generic/nsf.c (.../nsf.c) (revision 4f1c15063fb1597c9e8bd1e92a2f901cf3d73dfb) @@ -12093,10 +12093,18 @@ the basic metaclass Class, and store them in the RUNTIME STATE if successful */ - theobj = PrimitiveCCreate(interp, Object, NULL); - thecls = PrimitiveCCreate(interp, Class, NULL); - /* fprintf(stderr, "CreateObjectSystem created base classes \n"); */ + {Tcl_Obj *object, *class; + char *objectName = ObjStr(Object); + char *className = ObjStr(Class); + object = isAbsolutePath(objectName) ? Object : + NameInNamespaceObj(interp, objectName, CallingNameSpace(interp)); + class = isAbsolutePath(className) ? Class : + NameInNamespaceObj(interp, className, CallingNameSpace(interp)); + theobj = PrimitiveCCreate(interp, object, NULL); + thecls = PrimitiveCCreate(interp, class, NULL); + /* fprintf(stderr, "CreateObjectSystem created base classes \n"); */ + } #if defined(NSF_PROFILE) NsfProfileInit(interp); #endif