Index: cpukit/include/rtems/score/objectimpl.h
===================================================================
--- cpukit/include/rtems/score/objectimpl.h	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/include/rtems/score/objectimpl.h	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -125,6 +125,4 @@
   /** This points to the table of local objects. */
   Objects_Control **local_table;
-  /** This is the maximum number of objects in this class. */
-  Objects_Maximum   maximum;
   /** This is the number of objects on the Inactive list. */
   Objects_Maximum   inactive;
@@ -852,4 +850,18 @@
 
 /**
+ * Returns the maximum index of the specified object class.
+ *
+ * @param[in] information The object information.
+ *
+ * @return The maximum index of the specified object class.
+ */
+RTEMS_INLINE_ROUTINE Objects_Maximum _Objects_Get_maximum_index(
+  const Objects_Information *information
+)
+{
+  return _Objects_Get_index( information->maximum_id );
+}
+
+/**
  * This function sets the pointer to the local_table object
  * referenced by the index.
@@ -877,5 +889,5 @@
    */
   _Assert( index >= OBJECTS_INDEX_MINIMUM );
-  _Assert( index <= information->maximum );
+  _Assert( index <= _Objects_Get_maximum_index( information ) );
 
   information->local_table[ index - OBJECTS_INDEX_MINIMUM ] = the_object;
Index: cpukit/posix/src/killinfo.c
===================================================================
--- cpukit/posix/src/killinfo.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/posix/src/killinfo.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -208,5 +208,5 @@
       continue;
 
-    maximum = the_info->maximum;
+    maximum = _Objects_Get_maximum_index( the_info );
     object_table = the_info->local_table;
 
Index: cpukit/rtems/src/rtemsobjectgetclassinfo.c
===================================================================
--- cpukit/rtems/src/rtemsobjectgetclassinfo.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/rtems/src/rtemsobjectgetclassinfo.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -48,5 +48,5 @@
   info->maximum_id  = obj_info->maximum_id;
   info->auto_extend = obj_info->auto_extend;
-  info->maximum     = obj_info->maximum;
+  info->maximum     = _Objects_Get_maximum_index( obj_info );
 
   for ( unallocated=0, i=1 ; i <= info->maximum ; i++ )
Index: cpukit/score/src/objectactivecount.c
===================================================================
--- cpukit/score/src/objectactivecount.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectactivecount.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -25,12 +25,13 @@
 )
 {
-  size_t inactive;
-  size_t maximum;
+  Objects_Maximum inactive;
+  Objects_Maximum maximum;
 
   _Assert( _Objects_Allocator_is_owner() );
 
-  inactive = _Chain_Node_count_unprotected( &information->Inactive );
-  maximum  = information->maximum;
+  inactive = (Objects_Maximum)
+    _Chain_Node_count_unprotected( &information->Inactive );
+  maximum  = _Objects_Get_maximum_index( information );
 
-  return (Objects_Maximum) ( maximum - inactive );
+  return maximum - inactive;
 }
Index: cpukit/score/src/objectextendinformation.c
===================================================================
--- cpukit/score/src/objectextendinformation.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectextendinformation.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -50,5 +50,6 @@
   uint32_t          index_end;
   uint32_t          index;
-  uint32_t          maximum;
+  Objects_Maximum   old_maximum;
+  uint32_t          new_maximum;
   size_t            object_block_size;
   Objects_Control  *new_object_block;
@@ -60,4 +61,6 @@
   );
 
+  old_maximum = _Objects_Get_maximum_index( information );
+
   /*
    *  Search for a free block of indexes. If we do NOT need to allocate or
@@ -71,5 +74,5 @@
     block_count = 0;
   else {
-    block_count = information->maximum / information->objects_per_block;
+    block_count = old_maximum / information->objects_per_block;
 
     for ( ; block < block_count; block++ ) {
@@ -83,5 +86,5 @@
   index_end = index_base + information->objects_per_block;
 
-  maximum = (uint32_t) information->maximum + information->objects_per_block;
+  new_maximum = (uint32_t) old_maximum + information->objects_per_block;
 
   /*
@@ -90,5 +93,5 @@
    *  case of 16-bit Ids, this is only 256 object instances.
    */
-  if ( maximum > OBJECTS_ID_FINAL_INDEX ) {
+  if ( new_maximum > OBJECTS_ID_FINAL_INDEX ) {
     return;
   }
@@ -147,5 +150,5 @@
      */
     object_blocks_size = block_count * sizeof( *object_blocks );
-    local_table_size =  maximum * sizeof( *local_table );
+    local_table_size =  new_maximum * sizeof( *local_table );
     table_size = object_blocks_size
       + local_table_size
@@ -179,5 +182,5 @@
     block_count--;
 
-    if ( information->maximum > 0 ) {
+    if ( old_maximum > 0 ) {
       /*
        *  Copy each section of the table over. This has to be performed as
@@ -197,5 +200,5 @@
         local_table,
         information->local_table,
-        information->maximum * sizeof( *local_table )
+        old_maximum * sizeof( *local_table )
       );
     }
@@ -216,10 +219,9 @@
     information->inactive_per_block = inactive_per_block;
     information->local_table = local_table;
-    information->maximum = (Objects_Maximum) maximum;
     information->maximum_id = _Objects_Build_id(
       information->the_api,
       information->the_class,
       _Objects_Local_node,
-      information->maximum
+      new_maximum
     );
 
Index: cpukit/score/src/objectgetinfo.c
===================================================================
--- cpukit/score/src/objectgetinfo.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectgetinfo.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -56,5 +56,5 @@
    */
   #if !defined(RTEMS_MULTIPROCESSING)
-    if ( info->maximum == 0 )
+    if ( _Objects_Get_maximum_index( info ) == 0 )
       return NULL;
   #endif
Index: cpukit/score/src/objectgetnext.c
===================================================================
--- cpukit/score/src/objectgetnext.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectgetnext.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -29,4 +29,5 @@
     Objects_Control *the_object;
     Objects_Id       next_id;
+    Objects_Maximum  maximum;
 
     if ( !information )
@@ -42,19 +43,18 @@
 
     _Objects_Allocator_lock();
+    maximum = _Objects_Get_maximum_index( information );
 
     do {
-        /* walked off end of list? */
-        if (_Objects_Get_index(next_id) > information->maximum)
-        {
-            _Objects_Allocator_unlock();
-            *next_id_p = OBJECTS_ID_FINAL;
-            return NULL;
-        }
+      /* walked off end of list? */
+      if (_Objects_Get_index( next_id ) > maximum) {
+        _Objects_Allocator_unlock();
+        *next_id_p = OBJECTS_ID_FINAL;
+        return NULL;
+      }
 
-        /* try to grab one */
-        the_object = _Objects_Get_no_protection( next_id, information );
+      /* try to grab one */
+      the_object = _Objects_Get_no_protection( next_id, information );
 
-        next_id++;
-
+      next_id++;
     } while ( the_object == NULL );
 
Index: cpukit/score/src/objectinitializeinformation.c
===================================================================
--- cpukit/score/src/objectinitializeinformation.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectinitializeinformation.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -40,18 +40,7 @@
   Objects_Maximum maximum_per_allocation;
 
-  information->the_api            = the_api;
-  information->the_class          = the_class;
-  information->object_size        = object_size;
-  information->local_table        = 0;
-  information->inactive_per_block = 0;
-  information->object_blocks      = 0;
-  information->inactive           = 0;
-  information->local_table        = NULL;
-
-  /*
-   *  Set the maximum value to 0. It will be updated when objects are
-   *  added to the inactive set from _Objects_Extend_information()
-   */
-  information->maximum = 0;
+  information->the_api     = the_api;
+  information->the_class   = the_class;
+  information->object_size = object_size;
 
   /*
Index: cpukit/score/src/objectnametoid.c
===================================================================
--- cpukit/score/src/objectnametoid.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectnametoid.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -30,4 +30,5 @@
   bool                       search_local_node;
   Objects_Control           *the_object;
+  Objects_Maximum            maximum;
   Objects_Maximum            index;
 #if defined(RTEMS_MULTIPROCESSING)
@@ -43,7 +44,8 @@
     return OBJECTS_INVALID_NAME;
 
+  maximum = _Objects_Get_maximum_index( information );
   search_local_node = false;
 
-  if ( information->maximum != 0 &&
+  if ( maximum > 0 &&
       (node == OBJECTS_SEARCH_ALL_NODES ||
        node == OBJECTS_SEARCH_LOCAL_NODE ||
@@ -53,5 +55,5 @@
 
   if ( search_local_node ) {
-    for ( index = 0; index < information->maximum; ++index ) {
+    for ( index = 0; index < maximum; ++index ) {
       the_object = information->local_table[ index ];
       if ( !the_object )
Index: cpukit/score/src/objectnametoidstring.c
===================================================================
--- cpukit/score/src/objectnametoidstring.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectnametoidstring.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -30,7 +30,8 @@
 )
 {
-  size_t   name_length;
-  size_t   max_name_length;
-  uint32_t index;
+  size_t          name_length;
+  size_t          max_name_length;
+  Objects_Maximum maximum;
+  Objects_Maximum index;
 
   _Assert( _Objects_Has_string_name( information ) );
@@ -53,5 +54,7 @@
   }
 
-  for ( index = 0; index < information->maximum; ++index ) {
+  maximum = _Objects_Get_maximum_index( information );
+
+  for ( index = 0; index < maximum; ++index ) {
     Objects_Control *the_object;
 
Index: cpukit/score/src/objectshrinkinformation.c
===================================================================
--- cpukit/score/src/objectshrinkinformation.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/objectshrinkinformation.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -40,5 +40,5 @@
 
   objects_per_block = information->objects_per_block;
-  block_count = information->maximum / objects_per_block;
+  block_count = _Objects_Get_maximum_index( information ) / objects_per_block;
   index_base = 0;
 
Index: cpukit/score/src/threaditerate.c
===================================================================
--- cpukit/score/src/threaditerate.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ cpukit/score/src/threaditerate.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -28,5 +28,6 @@
   for ( api_index = 1 ; api_index <= OBJECTS_APIS_LAST ; ++api_index ) {
     const Objects_Information *information;
-    Objects_Maximum            i;
+    Objects_Maximum            maximum;
+    Objects_Maximum            index;
 
     if ( _Objects_Information_table[ api_index ] == NULL ) {
@@ -40,8 +41,10 @@
     }
 
-    for ( i = 0 ; i < information->maximum ; ++i ) {
+    maximum = _Objects_Get_maximum_index( information );
+
+    for ( index = 0 ; index < maximum ; ++index ) {
       Thread_Control *the_thread;
 
-      the_thread = (Thread_Control *) information->local_table[ i ];
+      the_thread = (Thread_Control *) information->local_table[ index ];
 
       if ( the_thread != NULL ) {
Index: testsuites/sptests/spsysinit01/init.c
===================================================================
--- testsuites/sptests/spsysinit01/init.c	(revision 3899bc1a4b3294306ae2fd3f8ff0ee10365d9f4b)
+++ testsuites/sptests/spsysinit01/init.c	(revision 1c2d17839760b0d8ad5a02e4c84bd8f99fac4e98)
@@ -249,5 +249,7 @@
 FIRST(RTEMS_SYSINIT_DATA_STRUCTURES)
 {
-  assert(_Thread_Internal_information.Objects.maximum == 0);
+  assert(
+    _Objects_Get_maximum_index(&_Thread_Internal_information.Objects) == 0
+  );
   next_step(DATA_STRUCTURES_PRE);
 }
@@ -255,5 +257,7 @@
 LAST(RTEMS_SYSINIT_DATA_STRUCTURES)
 {
-  assert(_Thread_Internal_information.Objects.maximum != 0);
+  assert(
+    _Objects_Get_maximum_index(&_Thread_Internal_information.Objects) != 0
+  );
   next_step(DATA_STRUCTURES_POST);
 }
@@ -261,5 +265,5 @@
 FIRST(RTEMS_SYSINIT_USER_EXTENSIONS)
 {
-  assert(_Extension_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Extension_Information) == 0);
   next_step(USER_EXTENSIONS_PRE);
 }
@@ -267,5 +271,5 @@
 LAST(RTEMS_SYSINIT_USER_EXTENSIONS)
 {
-  assert(_Extension_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Extension_Information) != 0);
   next_step(USER_EXTENSIONS_POST);
 }
@@ -273,5 +277,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_TASKS)
 {
-  assert(_RTEMS_tasks_Information.Objects.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_RTEMS_tasks_Information.Objects) == 0);
   next_step(CLASSIC_TASKS_PRE);
 }
@@ -279,5 +283,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_TASKS)
 {
-  assert(_RTEMS_tasks_Information.Objects.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_RTEMS_tasks_Information.Objects) != 0);
   next_step(CLASSIC_TASKS_POST);
 }
@@ -285,5 +289,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_TIMER)
 {
-  assert(_Timer_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Timer_Information) == 0);
   next_step(CLASSIC_TIMER_PRE);
 }
@@ -291,5 +295,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_TIMER)
 {
-  assert(_Timer_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Timer_Information) != 0);
   next_step(CLASSIC_TIMER_POST);
 }
@@ -319,5 +323,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_MESSAGE_QUEUE)
 {
-  assert(_Message_queue_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Message_queue_Information) == 0);
   next_step(CLASSIC_MESSAGE_QUEUE_PRE);
 }
@@ -325,5 +329,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_MESSAGE_QUEUE)
 {
-  assert(_Message_queue_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Message_queue_Information) != 0);
   next_step(CLASSIC_MESSAGE_QUEUE_POST);
 }
@@ -331,5 +335,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_SEMAPHORE)
 {
-  assert(_Semaphore_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Semaphore_Information) == 0);
   next_step(CLASSIC_SEMAPHORE_PRE);
 }
@@ -337,5 +341,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_SEMAPHORE)
 {
-  assert(_Semaphore_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Semaphore_Information) != 0);
   next_step(CLASSIC_SEMAPHORE_POST);
 }
@@ -343,5 +347,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_PARTITION)
 {
-  assert(_Partition_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Partition_Information) == 0);
   next_step(CLASSIC_PARTITION_PRE);
 }
@@ -349,5 +353,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_PARTITION)
 {
-  assert(_Partition_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Partition_Information) != 0);
   next_step(CLASSIC_PARTITION_POST);
 }
@@ -355,5 +359,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_REGION)
 {
-  assert(_Region_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Region_Information) == 0);
   next_step(CLASSIC_REGION_PRE);
 }
@@ -361,5 +365,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_REGION)
 {
-  assert(_Region_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Region_Information) != 0);
   next_step(CLASSIC_REGION_POST);
 }
@@ -367,5 +371,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_DUAL_PORTED_MEMORY)
 {
-  assert(_Dual_ported_memory_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Dual_ported_memory_Information) == 0);
   next_step(CLASSIC_DUAL_PORTED_MEMORY_PRE);
 }
@@ -373,5 +377,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_DUAL_PORTED_MEMORY)
 {
-  assert(_Dual_ported_memory_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Dual_ported_memory_Information) != 0);
   next_step(CLASSIC_DUAL_PORTED_MEMORY_POST);
 }
@@ -379,5 +383,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_RATE_MONOTONIC)
 {
-  assert(_Rate_monotonic_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Rate_monotonic_Information) == 0);
   next_step(CLASSIC_RATE_MONOTONIC_PRE);
 }
@@ -385,5 +389,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_RATE_MONOTONIC)
 {
-  assert(_Rate_monotonic_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Rate_monotonic_Information) != 0);
   next_step(CLASSIC_RATE_MONOTONIC_POST);
 }
@@ -391,5 +395,5 @@
 FIRST(RTEMS_SYSINIT_CLASSIC_BARRIER)
 {
-  assert(_Barrier_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_Barrier_Information) == 0);
   next_step(CLASSIC_BARRIER_PRE);
 }
@@ -397,5 +401,5 @@
 LAST(RTEMS_SYSINIT_CLASSIC_BARRIER)
 {
-  assert(_Barrier_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_Barrier_Information) != 0);
   next_step(CLASSIC_BARRIER_POST);
 }
@@ -429,5 +433,5 @@
 FIRST(RTEMS_SYSINIT_POSIX_THREADS)
 {
-  assert(_POSIX_Threads_Information.Objects.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Threads_Information.Objects) == 0);
   next_step(POSIX_THREADS_PRE);
 }
@@ -435,5 +439,5 @@
 LAST(RTEMS_SYSINIT_POSIX_THREADS)
 {
-  assert(_POSIX_Threads_Information.Objects.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Threads_Information.Objects) != 0);
   next_step(POSIX_THREADS_POST);
 }
@@ -441,5 +445,5 @@
 FIRST(RTEMS_SYSINIT_POSIX_MESSAGE_QUEUE)
 {
-  assert(_POSIX_Message_queue_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Message_queue_Information) == 0);
   next_step(POSIX_MESSAGE_QUEUE_PRE);
 }
@@ -447,5 +451,5 @@
 LAST(RTEMS_SYSINIT_POSIX_MESSAGE_QUEUE)
 {
-  assert(_POSIX_Message_queue_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Message_queue_Information) != 0);
   next_step(POSIX_MESSAGE_QUEUE_POST);
 }
@@ -453,5 +457,5 @@
 FIRST(RTEMS_SYSINIT_POSIX_SEMAPHORE)
 {
-  assert(_POSIX_Semaphore_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Semaphore_Information) == 0);
   next_step(POSIX_SEMAPHORE_PRE);
 }
@@ -459,5 +463,5 @@
 LAST(RTEMS_SYSINIT_POSIX_SEMAPHORE)
 {
-  assert(_POSIX_Semaphore_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Semaphore_Information) != 0);
   next_step(POSIX_SEMAPHORE_POST);
 }
@@ -466,5 +470,5 @@
 FIRST(RTEMS_SYSINIT_POSIX_TIMER)
 {
-  assert(_POSIX_Timer_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Timer_Information) == 0);
   next_step(POSIX_TIMER_PRE);
 }
@@ -472,5 +476,5 @@
 LAST(RTEMS_SYSINIT_POSIX_TIMER)
 {
-  assert(_POSIX_Timer_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Timer_Information) != 0);
   next_step(POSIX_TIMER_POST);
 }
@@ -479,5 +483,5 @@
 FIRST(RTEMS_SYSINIT_POSIX_SHM)
 {
-  assert(_POSIX_Shm_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Shm_Information) == 0);
   next_step(POSIX_SHM_PRE);
 }
@@ -485,5 +489,5 @@
 LAST(RTEMS_SYSINIT_POSIX_SHM)
 {
-  assert(_POSIX_Shm_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Shm_Information) != 0);
   next_step(POSIX_SHM_POST);
 }
@@ -509,5 +513,5 @@
 FIRST(RTEMS_SYSINIT_POSIX_KEYS)
 {
-  assert(_POSIX_Keys_Information.maximum == 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Keys_Information) == 0);
   next_step(POSIX_KEYS_PRE);
 }
@@ -515,5 +519,5 @@
 LAST(RTEMS_SYSINIT_POSIX_KEYS)
 {
-  assert(_POSIX_Keys_Information.maximum != 0);
+  assert(_Objects_Get_maximum_index(&_POSIX_Keys_Information) != 0);
   next_step(POSIX_KEYS_POST);
 }
