Index: cpukit/include/rtems/score/objectimpl.h
===================================================================
--- cpukit/include/rtems/score/objectimpl.h	(revision 2afb22b7e1ebcbe40373ff7e0efae7d207c655a9)
+++ cpukit/include/rtems/score/objectimpl.h	(revision 70382718450c6b5d83232188cc71b6c795048a27)
@@ -131,4 +131,6 @@
   /** This is the maximum number of objects in this class. */
   Objects_Maximum   maximum;
+  /** This is true if names are strings. */
+  bool              is_string;
   /** This is the true if unlimited objects in this class. */
   bool              auto_extend;
@@ -147,8 +149,4 @@
   /** This is a table to the chain of inactive object memory blocks. */
   void            **object_blocks;
-  #if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)
-    /** This is true if names are strings. */
-    bool              is_string;
-  #endif
   /** This is the maximum length of names. */
   uint16_t          name_length;
@@ -686,20 +684,29 @@
  */
 bool _Objects_Set_name(
-  Objects_Information *information,
-  Objects_Control     *the_object,
-  const char          *name
-);
-
-/**
- *  @brief Removes object from namespace.
- *
- *  This function removes @a the_object from the namespace.
- *
- *  @param[in] information points to an Object Information Table.
- *  @param[in] the_object is a pointer to an object.
- */
-void _Objects_Namespace_remove(
-  Objects_Information  *information,
-  Objects_Control      *the_object
+  const Objects_Information *information,
+  Objects_Control           *the_object,
+  const char                *name
+);
+
+/**
+ * @brief Removes object with a 32-bit integer name from its namespace.
+ *
+ * @param[in] information The corresponding object information table.
+ * @param[in] the_object The object.
+ */
+void _Objects_Namespace_remove_u32(
+  const Objects_Information *information,
+  Objects_Control           *the_object
+);
+
+/**
+ * @brief Removes object with a string name from its namespace.
+ *
+ * @param[in] information The corresponding object information table.
+ * @param[in] the_object The object.
+ */
+void _Objects_Namespace_remove_string(
+  const Objects_Information *information,
+  Objects_Control           *the_object
 );
 
@@ -714,6 +721,6 @@
  */
 void _Objects_Close(
-  Objects_Information  *information,
-  Objects_Control      *the_object
+  const Objects_Information *information,
+  Objects_Control           *the_object
 );
 
@@ -829,7 +836,7 @@
 
 RTEMS_INLINE_ROUTINE void _Objects_Set_local_object(
-  Objects_Information *information,
-  uint32_t             index,
-  Objects_Control     *the_object
+  const Objects_Information *information,
+  uint32_t                   index,
+  Objects_Control           *the_object
 )
 {
@@ -839,8 +846,5 @@
    *  occur in normal situations.
    */
-  #if defined(RTEMS_DEBUG)
-    if ( index > information->maximum )
-      return;
-  #endif
+  _Assert( index <= information->maximum );
 
   information->local_table[ index ] = the_object;
@@ -862,6 +866,6 @@
 
 RTEMS_INLINE_ROUTINE void _Objects_Invalidate_Id(
-  Objects_Information  *information,
-  Objects_Control      *the_object
+  const Objects_Information *information,
+  Objects_Control           *the_object
 )
 {
@@ -911,10 +915,10 @@
  */
 RTEMS_INLINE_ROUTINE void _Objects_Open_u32(
-  Objects_Information *information,
-  Objects_Control     *the_object,
-  uint32_t             name
+  const Objects_Information *information,
+  Objects_Control           *the_object,
+  uint32_t                   name
 )
 {
-  /* ASSERT: information->is_string == false */
+  _Assert( !information->is_string );
   the_object->name.name_u32 = name;
 
@@ -935,13 +939,11 @@
  */
 RTEMS_INLINE_ROUTINE void _Objects_Open_string(
-  Objects_Information *information,
-  Objects_Control     *the_object,
-  const char          *name
+  const Objects_Information *information,
+  Objects_Control           *the_object,
+  const char                *name
 )
 {
-  #if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)
-    /* ASSERT: information->is_string */
-    the_object->name.name_p = name;
-  #endif
+  _Assert( information->is_string );
+  the_object->name.name_p = name;
 
   _Objects_Set_local_object(
