[rtems commit] validation: Fix handling of N/A pre-conditions

Sebastian Huber sebh at rtems.org
Fri May 7 06:00:07 UTC 2021


Module:    rtems
Branch:    master
Commit:    9f727f937965ee3e7bd07c5af5ee48aafa59eaf8
Changeset: http://git.rtems.org/rtems/commit/?id=9f727f937965ee3e7bd07c5af5ee48aafa59eaf8

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu May  6 15:15:28 2021 +0200

validation: Fix handling of N/A pre-conditions

In the action requirements, some pre-conditions are not applicable
depending on the state of other pre-conditions.  There is no particular
order in the pre-conditions, so we have to check the N/A status
individually.

---

 testsuites/validation/tc-barrier-create.c          |  53 +---------
 testsuites/validation/tc-barrier-delete.c          |  15 +--
 testsuites/validation/tc-barrier-release.c         |  32 ++----
 testsuites/validation/tc-barrier-wait.c            |  40 +++-----
 .../validation/tc-message-construct-errors.c       |  92 +-----------------
 testsuites/validation/tc-signal-catch.c            |  65 +------------
 testsuites/validation/tc-signal-send.c             |  53 +---------
 testsuites/validation/tc-task-construct-errors.c   | 107 +--------------------
 testsuites/validation/tc-task-create-errors.c      |  78 +--------------
 9 files changed, 43 insertions(+), 492 deletions(-)

diff --git a/testsuites/validation/tc-barrier-create.c b/testsuites/validation/tc-barrier-create.c
index 436030e..46d013e 100644
--- a/testsuites/validation/tc-barrier-create.c
+++ b/testsuites/validation/tc-barrier-create.c
@@ -678,7 +678,6 @@ static inline RtemsBarrierReqCreate_Entry RtemsBarrierReqCreate_GetEntry(
 T_TEST_CASE_FIXTURE( RtemsBarrierReqCreate, &RtemsBarrierReqCreate_Fixture )
 {
   RtemsBarrierReqCreate_Context *ctx;
-  RtemsBarrierReqCreate_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -690,75 +689,30 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqCreate, &RtemsBarrierReqCreate_Fixture )
     ctx->pcs[ 0 ] < RtemsBarrierReqCreate_Pre_Name_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsBarrierReqCreate_GetEntry( index );
-
-    if ( entry.Pre_Name_NA ) {
-      ctx->pcs[ 0 ] = RtemsBarrierReqCreate_Pre_Name_NA;
-      index += ( RtemsBarrierReqCreate_Pre_Name_NA - 1 )
-        * RtemsBarrierReqCreate_Pre_Id_NA
-        * RtemsBarrierReqCreate_Pre_Class_NA
-        * RtemsBarrierReqCreate_Pre_MaxWait_NA
-        * RtemsBarrierReqCreate_Pre_Free_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsBarrierReqCreate_Pre_Id_Valid;
       ctx->pcs[ 1 ] < RtemsBarrierReqCreate_Pre_Id_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsBarrierReqCreate_GetEntry( index );
-
-      if ( entry.Pre_Id_NA ) {
-        ctx->pcs[ 1 ] = RtemsBarrierReqCreate_Pre_Id_NA;
-        index += ( RtemsBarrierReqCreate_Pre_Id_NA - 1 )
-          * RtemsBarrierReqCreate_Pre_Class_NA
-          * RtemsBarrierReqCreate_Pre_MaxWait_NA
-          * RtemsBarrierReqCreate_Pre_Free_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsBarrierReqCreate_Pre_Class_Default;
         ctx->pcs[ 2 ] < RtemsBarrierReqCreate_Pre_Class_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsBarrierReqCreate_GetEntry( index );
-
-        if ( entry.Pre_Class_NA ) {
-          ctx->pcs[ 2 ] = RtemsBarrierReqCreate_Pre_Class_NA;
-          index += ( RtemsBarrierReqCreate_Pre_Class_NA - 1 )
-            * RtemsBarrierReqCreate_Pre_MaxWait_NA
-            * RtemsBarrierReqCreate_Pre_Free_NA;
-        }
-
         for (
           ctx->pcs[ 3 ] = RtemsBarrierReqCreate_Pre_MaxWait_Zero;
           ctx->pcs[ 3 ] < RtemsBarrierReqCreate_Pre_MaxWait_NA;
           ++ctx->pcs[ 3 ]
         ) {
-          entry = RtemsBarrierReqCreate_GetEntry( index );
-
-          if ( entry.Pre_MaxWait_NA ) {
-            ctx->pcs[ 3 ] = RtemsBarrierReqCreate_Pre_MaxWait_NA;
-            index += ( RtemsBarrierReqCreate_Pre_MaxWait_NA - 1 )
-              * RtemsBarrierReqCreate_Pre_Free_NA;
-          }
-
           for (
             ctx->pcs[ 4 ] = RtemsBarrierReqCreate_Pre_Free_Yes;
             ctx->pcs[ 4 ] < RtemsBarrierReqCreate_Pre_Free_NA;
             ++ctx->pcs[ 4 ]
           ) {
-            entry = RtemsBarrierReqCreate_GetEntry( index );
-
-            if ( entry.Pre_Free_NA ) {
-              ctx->pcs[ 4 ] = RtemsBarrierReqCreate_Pre_Free_NA;
-              index += ( RtemsBarrierReqCreate_Pre_Free_NA - 1 );
-            }
+            RtemsBarrierReqCreate_Entry entry;
 
-            if ( entry.Skip ) {
-              ++index;
-              continue;
-            }
+            entry = RtemsBarrierReqCreate_GetEntry( index );
+            ++index;
 
             RtemsBarrierReqCreate_Pre_Name_Prepare( ctx, ctx->pcs[ 0 ] );
             RtemsBarrierReqCreate_Pre_Id_Prepare( ctx, ctx->pcs[ 1 ] );
@@ -771,7 +725,6 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqCreate, &RtemsBarrierReqCreate_Fixture )
             RtemsBarrierReqCreate_Post_Class_Check( ctx, entry.Post_Class );
             RtemsBarrierReqCreate_Post_IdVar_Check( ctx, entry.Post_IdVar );
             RtemsBarrierReqCreate_Cleanup( ctx );
-            ++index;
           }
         }
       }
diff --git a/testsuites/validation/tc-barrier-delete.c b/testsuites/validation/tc-barrier-delete.c
index 1655ff1..1402ff4 100644
--- a/testsuites/validation/tc-barrier-delete.c
+++ b/testsuites/validation/tc-barrier-delete.c
@@ -407,7 +407,6 @@ static inline RtemsBarrierReqDelete_Entry RtemsBarrierReqDelete_GetEntry(
 T_TEST_CASE_FIXTURE( RtemsBarrierReqDelete, &RtemsBarrierReqDelete_Fixture )
 {
   RtemsBarrierReqDelete_Context *ctx;
-  RtemsBarrierReqDelete_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -419,17 +418,10 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqDelete, &RtemsBarrierReqDelete_Fixture )
     ctx->pcs[ 0 ] < RtemsBarrierReqDelete_Pre_Id_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsBarrierReqDelete_GetEntry( index );
-
-    if ( entry.Pre_Id_NA ) {
-      ctx->pcs[ 0 ] = RtemsBarrierReqDelete_Pre_Id_NA;
-      index += ( RtemsBarrierReqDelete_Pre_Id_NA - 1 );
-    }
+    RtemsBarrierReqDelete_Entry entry;
 
-    if ( entry.Skip ) {
-      ++index;
-      continue;
-    }
+    entry = RtemsBarrierReqDelete_GetEntry( index );
+    ++index;
 
     RtemsBarrierReqDelete_Prepare( ctx );
     RtemsBarrierReqDelete_Pre_Id_Prepare( ctx, ctx->pcs[ 0 ] );
@@ -438,7 +430,6 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqDelete, &RtemsBarrierReqDelete_Fixture )
     RtemsBarrierReqDelete_Post_Name_Check( ctx, entry.Post_Name );
     RtemsBarrierReqDelete_Post_Flush_Check( ctx, entry.Post_Flush );
     RtemsBarrierReqDelete_Cleanup( ctx );
-    ++index;
   }
 }
 
diff --git a/testsuites/validation/tc-barrier-release.c b/testsuites/validation/tc-barrier-release.c
index ca13ef8..4e9046f 100644
--- a/testsuites/validation/tc-barrier-release.c
+++ b/testsuites/validation/tc-barrier-release.c
@@ -485,7 +485,6 @@ static inline RtemsBarrierReqRelease_Entry RtemsBarrierReqRelease_GetEntry(
 T_TEST_CASE_FIXTURE( RtemsBarrierReqRelease, &RtemsBarrierReqRelease_Fixture )
 {
   RtemsBarrierReqRelease_Context *ctx;
-  RtemsBarrierReqRelease_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -497,43 +496,26 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqRelease, &RtemsBarrierReqRelease_Fixture )
     ctx->pcs[ 0 ] < RtemsBarrierReqRelease_Pre_Id_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsBarrierReqRelease_GetEntry( index );
-
-    if ( entry.Pre_Id_NA ) {
-      ctx->pcs[ 0 ] = RtemsBarrierReqRelease_Pre_Id_NA;
-      index += ( RtemsBarrierReqRelease_Pre_Id_NA - 1 )
-        * RtemsBarrierReqRelease_Pre_Released_NA
-        * RtemsBarrierReqRelease_Pre_Waiting_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsBarrierReqRelease_Pre_Released_Valid;
       ctx->pcs[ 1 ] < RtemsBarrierReqRelease_Pre_Released_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsBarrierReqRelease_GetEntry( index );
-
-      if ( entry.Pre_Released_NA ) {
-        ctx->pcs[ 1 ] = RtemsBarrierReqRelease_Pre_Released_NA;
-        index += ( RtemsBarrierReqRelease_Pre_Released_NA - 1 )
-          * RtemsBarrierReqRelease_Pre_Waiting_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsBarrierReqRelease_Pre_Waiting_Zero;
         ctx->pcs[ 2 ] < RtemsBarrierReqRelease_Pre_Waiting_NA;
         ++ctx->pcs[ 2 ]
       ) {
+        RtemsBarrierReqRelease_Entry entry;
+        size_t pcs[ 3 ];
+
         entry = RtemsBarrierReqRelease_GetEntry( index );
+        ++index;
+
+        memcpy( pcs, ctx->pcs, sizeof( pcs ) );
 
         if ( entry.Pre_Waiting_NA ) {
           ctx->pcs[ 2 ] = RtemsBarrierReqRelease_Pre_Waiting_NA;
-          index += ( RtemsBarrierReqRelease_Pre_Waiting_NA - 1 );
-        }
-
-        if ( entry.Skip ) {
-          ++index;
-          continue;
         }
 
         RtemsBarrierReqRelease_Pre_Id_Prepare( ctx, ctx->pcs[ 0 ] );
@@ -545,7 +527,7 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqRelease, &RtemsBarrierReqRelease_Fixture )
           ctx,
           entry.Post_ReleasedVar
         );
-        ++index;
+        memcpy( ctx->pcs, pcs, sizeof( ctx->pcs ) );
       }
     }
   }
diff --git a/testsuites/validation/tc-barrier-wait.c b/testsuites/validation/tc-barrier-wait.c
index b67acab..bd24c9e 100644
--- a/testsuites/validation/tc-barrier-wait.c
+++ b/testsuites/validation/tc-barrier-wait.c
@@ -529,7 +529,6 @@ static inline RtemsBarrierReqWait_Entry RtemsBarrierReqWait_GetEntry(
 T_TEST_CASE_FIXTURE( RtemsBarrierReqWait, &RtemsBarrierReqWait_Fixture )
 {
   RtemsBarrierReqWait_Context *ctx;
-  RtemsBarrierReqWait_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -541,51 +540,42 @@ T_TEST_CASE_FIXTURE( RtemsBarrierReqWait, &RtemsBarrierReqWait_Fixture )
     ctx->pcs[ 0 ] < RtemsBarrierReqWait_Pre_Id_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsBarrierReqWait_GetEntry( index );
-
-    if ( entry.Pre_Id_NA ) {
-      ctx->pcs[ 0 ] = RtemsBarrierReqWait_Pre_Id_NA;
-      index += ( RtemsBarrierReqWait_Pre_Id_NA - 1 )
-        * RtemsBarrierReqWait_Pre_Timeout_NA
-        * RtemsBarrierReqWait_Pre_Satisfy_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsBarrierReqWait_Pre_Timeout_Ticks;
       ctx->pcs[ 1 ] < RtemsBarrierReqWait_Pre_Timeout_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsBarrierReqWait_GetEntry( index );
-
-      if ( entry.Pre_Timeout_NA ) {
-        ctx->pcs[ 1 ] = RtemsBarrierReqWait_Pre_Timeout_NA;
-        index += ( RtemsBarrierReqWait_Pre_Timeout_NA - 1 )
-          * RtemsBarrierReqWait_Pre_Satisfy_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsBarrierReqWait_Pre_Satisfy_Never;
         ctx->pcs[ 2 ] < RtemsBarrierReqWait_Pre_Satisfy_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsBarrierReqWait_GetEntry( index );
+        RtemsBarrierReqWait_Entry entry;
+        size_t pcs[ 3 ];
 
-        if ( entry.Pre_Satisfy_NA ) {
-          ctx->pcs[ 2 ] = RtemsBarrierReqWait_Pre_Satisfy_NA;
-          index += ( RtemsBarrierReqWait_Pre_Satisfy_NA - 1 );
-        }
+        entry = RtemsBarrierReqWait_GetEntry( index );
+        ++index;
 
         if ( entry.Skip ) {
-          ++index;
           continue;
         }
 
+        memcpy( pcs, ctx->pcs, sizeof( pcs ) );
+
+        if ( entry.Pre_Timeout_NA ) {
+          ctx->pcs[ 1 ] = RtemsBarrierReqWait_Pre_Timeout_NA;
+        }
+
+        if ( entry.Pre_Satisfy_NA ) {
+          ctx->pcs[ 2 ] = RtemsBarrierReqWait_Pre_Satisfy_NA;
+        }
+
         RtemsBarrierReqWait_Pre_Id_Prepare( ctx, ctx->pcs[ 0 ] );
         RtemsBarrierReqWait_Pre_Timeout_Prepare( ctx, ctx->pcs[ 1 ] );
         RtemsBarrierReqWait_Pre_Satisfy_Prepare( ctx, ctx->pcs[ 2 ] );
         RtemsBarrierReqWait_Action( ctx );
         RtemsBarrierReqWait_Post_Status_Check( ctx, entry.Post_Status );
-        ++index;
+        memcpy( ctx->pcs, pcs, sizeof( ctx->pcs ) );
       }
     }
   }
diff --git a/testsuites/validation/tc-message-construct-errors.c b/testsuites/validation/tc-message-construct-errors.c
index 40b5f1d..0838596 100644
--- a/testsuites/validation/tc-message-construct-errors.c
+++ b/testsuites/validation/tc-message-construct-errors.c
@@ -821,7 +821,6 @@ T_TEST_CASE_FIXTURE(
 )
 {
   RtemsMessageReqConstructErrors_Context *ctx;
-  RtemsMessageReqConstructErrors_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -833,129 +832,45 @@ T_TEST_CASE_FIXTURE(
     ctx->pcs[ 0 ] < RtemsMessageReqConstructErrors_Pre_Config_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-    if ( entry.Pre_Config_NA ) {
-      ctx->pcs[ 0 ] = RtemsMessageReqConstructErrors_Pre_Config_NA;
-      index += ( RtemsMessageReqConstructErrors_Pre_Config_NA - 1 )
-        * RtemsMessageReqConstructErrors_Pre_Name_NA
-        * RtemsMessageReqConstructErrors_Pre_Id_NA
-        * RtemsMessageReqConstructErrors_Pre_MaxPending_NA
-        * RtemsMessageReqConstructErrors_Pre_MaxSize_NA
-        * RtemsMessageReqConstructErrors_Pre_Free_NA
-        * RtemsMessageReqConstructErrors_Pre_Area_NA
-        * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsMessageReqConstructErrors_Pre_Name_Valid;
       ctx->pcs[ 1 ] < RtemsMessageReqConstructErrors_Pre_Name_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-      if ( entry.Pre_Name_NA ) {
-        ctx->pcs[ 1 ] = RtemsMessageReqConstructErrors_Pre_Name_NA;
-        index += ( RtemsMessageReqConstructErrors_Pre_Name_NA - 1 )
-          * RtemsMessageReqConstructErrors_Pre_Id_NA
-          * RtemsMessageReqConstructErrors_Pre_MaxPending_NA
-          * RtemsMessageReqConstructErrors_Pre_MaxSize_NA
-          * RtemsMessageReqConstructErrors_Pre_Free_NA
-          * RtemsMessageReqConstructErrors_Pre_Area_NA
-          * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsMessageReqConstructErrors_Pre_Id_Id;
         ctx->pcs[ 2 ] < RtemsMessageReqConstructErrors_Pre_Id_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-        if ( entry.Pre_Id_NA ) {
-          ctx->pcs[ 2 ] = RtemsMessageReqConstructErrors_Pre_Id_NA;
-          index += ( RtemsMessageReqConstructErrors_Pre_Id_NA - 1 )
-            * RtemsMessageReqConstructErrors_Pre_MaxPending_NA
-            * RtemsMessageReqConstructErrors_Pre_MaxSize_NA
-            * RtemsMessageReqConstructErrors_Pre_Free_NA
-            * RtemsMessageReqConstructErrors_Pre_Area_NA
-            * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-        }
-
         for (
           ctx->pcs[ 3 ] = RtemsMessageReqConstructErrors_Pre_MaxPending_Valid;
           ctx->pcs[ 3 ] < RtemsMessageReqConstructErrors_Pre_MaxPending_NA;
           ++ctx->pcs[ 3 ]
         ) {
-          entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-          if ( entry.Pre_MaxPending_NA ) {
-            ctx->pcs[ 3 ] = RtemsMessageReqConstructErrors_Pre_MaxPending_NA;
-            index += ( RtemsMessageReqConstructErrors_Pre_MaxPending_NA - 1 )
-              * RtemsMessageReqConstructErrors_Pre_MaxSize_NA
-              * RtemsMessageReqConstructErrors_Pre_Free_NA
-              * RtemsMessageReqConstructErrors_Pre_Area_NA
-              * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-          }
-
           for (
             ctx->pcs[ 4 ] = RtemsMessageReqConstructErrors_Pre_MaxSize_Valid;
             ctx->pcs[ 4 ] < RtemsMessageReqConstructErrors_Pre_MaxSize_NA;
             ++ctx->pcs[ 4 ]
           ) {
-            entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-            if ( entry.Pre_MaxSize_NA ) {
-              ctx->pcs[ 4 ] = RtemsMessageReqConstructErrors_Pre_MaxSize_NA;
-              index += ( RtemsMessageReqConstructErrors_Pre_MaxSize_NA - 1 )
-                * RtemsMessageReqConstructErrors_Pre_Free_NA
-                * RtemsMessageReqConstructErrors_Pre_Area_NA
-                * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-            }
-
             for (
               ctx->pcs[ 5 ] = RtemsMessageReqConstructErrors_Pre_Free_Yes;
               ctx->pcs[ 5 ] < RtemsMessageReqConstructErrors_Pre_Free_NA;
               ++ctx->pcs[ 5 ]
             ) {
-              entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-              if ( entry.Pre_Free_NA ) {
-                ctx->pcs[ 5 ] = RtemsMessageReqConstructErrors_Pre_Free_NA;
-                index += ( RtemsMessageReqConstructErrors_Pre_Free_NA - 1 )
-                  * RtemsMessageReqConstructErrors_Pre_Area_NA
-                  * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-              }
-
               for (
                 ctx->pcs[ 6 ] = RtemsMessageReqConstructErrors_Pre_Area_Valid;
                 ctx->pcs[ 6 ] < RtemsMessageReqConstructErrors_Pre_Area_NA;
                 ++ctx->pcs[ 6 ]
               ) {
-                entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-                if ( entry.Pre_Area_NA ) {
-                  ctx->pcs[ 6 ] = RtemsMessageReqConstructErrors_Pre_Area_NA;
-                  index += ( RtemsMessageReqConstructErrors_Pre_Area_NA - 1 )
-                    * RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-                }
-
                 for (
                   ctx->pcs[ 7 ] = RtemsMessageReqConstructErrors_Pre_AreaSize_Valid;
                   ctx->pcs[ 7 ] < RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
                   ++ctx->pcs[ 7 ]
                 ) {
-                  entry = RtemsMessageReqConstructErrors_GetEntry( index );
-
-                  if ( entry.Pre_AreaSize_NA ) {
-                    ctx->pcs[ 7 ] = RtemsMessageReqConstructErrors_Pre_AreaSize_NA;
-                    index += ( RtemsMessageReqConstructErrors_Pre_AreaSize_NA - 1 );
-                  }
+                  RtemsMessageReqConstructErrors_Entry entry;
 
-                  if ( entry.Skip ) {
-                    ++index;
-                    continue;
-                  }
+                  entry = RtemsMessageReqConstructErrors_GetEntry( index );
+                  ++index;
 
                   RtemsMessageReqConstructErrors_Prepare( ctx );
                   RtemsMessageReqConstructErrors_Pre_Config_Prepare(
@@ -1004,7 +919,6 @@ T_TEST_CASE_FIXTURE(
                     entry.Post_IdVar
                   );
                   RtemsMessageReqConstructErrors_Cleanup( ctx );
-                  ++index;
                 }
               }
             }
diff --git a/testsuites/validation/tc-signal-catch.c b/testsuites/validation/tc-signal-catch.c
index be0ba2c..d78969b 100644
--- a/testsuites/validation/tc-signal-catch.c
+++ b/testsuites/validation/tc-signal-catch.c
@@ -825,7 +825,6 @@ static inline RtemsSignalReqCatch_Entry RtemsSignalReqCatch_GetEntry(
 T_TEST_CASE_FIXTURE( RtemsSignalReqCatch, &RtemsSignalReqCatch_Fixture )
 {
   RtemsSignalReqCatch_Context *ctx;
-  RtemsSignalReqCatch_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -837,92 +836,35 @@ T_TEST_CASE_FIXTURE( RtemsSignalReqCatch, &RtemsSignalReqCatch_Fixture )
     ctx->pcs[ 0 ] < RtemsSignalReqCatch_Pre_Pending_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsSignalReqCatch_GetEntry( index );
-
-    if ( entry.Pre_Pending_NA ) {
-      ctx->pcs[ 0 ] = RtemsSignalReqCatch_Pre_Pending_NA;
-      index += ( RtemsSignalReqCatch_Pre_Pending_NA - 1 )
-        * RtemsSignalReqCatch_Pre_Handler_NA
-        * RtemsSignalReqCatch_Pre_Preempt_NA
-        * RtemsSignalReqCatch_Pre_Timeslice_NA
-        * RtemsSignalReqCatch_Pre_ASR_NA
-        * RtemsSignalReqCatch_Pre_IntLvl_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsSignalReqCatch_Pre_Handler_Invalid;
       ctx->pcs[ 1 ] < RtemsSignalReqCatch_Pre_Handler_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsSignalReqCatch_GetEntry( index );
-
-      if ( entry.Pre_Handler_NA ) {
-        ctx->pcs[ 1 ] = RtemsSignalReqCatch_Pre_Handler_NA;
-        index += ( RtemsSignalReqCatch_Pre_Handler_NA - 1 )
-          * RtemsSignalReqCatch_Pre_Preempt_NA
-          * RtemsSignalReqCatch_Pre_Timeslice_NA
-          * RtemsSignalReqCatch_Pre_ASR_NA
-          * RtemsSignalReqCatch_Pre_IntLvl_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsSignalReqCatch_Pre_Preempt_Yes;
         ctx->pcs[ 2 ] < RtemsSignalReqCatch_Pre_Preempt_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsSignalReqCatch_GetEntry( index );
-
-        if ( entry.Pre_Preempt_NA ) {
-          ctx->pcs[ 2 ] = RtemsSignalReqCatch_Pre_Preempt_NA;
-          index += ( RtemsSignalReqCatch_Pre_Preempt_NA - 1 )
-            * RtemsSignalReqCatch_Pre_Timeslice_NA
-            * RtemsSignalReqCatch_Pre_ASR_NA
-            * RtemsSignalReqCatch_Pre_IntLvl_NA;
-        }
-
         for (
           ctx->pcs[ 3 ] = RtemsSignalReqCatch_Pre_Timeslice_Yes;
           ctx->pcs[ 3 ] < RtemsSignalReqCatch_Pre_Timeslice_NA;
           ++ctx->pcs[ 3 ]
         ) {
-          entry = RtemsSignalReqCatch_GetEntry( index );
-
-          if ( entry.Pre_Timeslice_NA ) {
-            ctx->pcs[ 3 ] = RtemsSignalReqCatch_Pre_Timeslice_NA;
-            index += ( RtemsSignalReqCatch_Pre_Timeslice_NA - 1 )
-              * RtemsSignalReqCatch_Pre_ASR_NA
-              * RtemsSignalReqCatch_Pre_IntLvl_NA;
-          }
-
           for (
             ctx->pcs[ 4 ] = RtemsSignalReqCatch_Pre_ASR_Yes;
             ctx->pcs[ 4 ] < RtemsSignalReqCatch_Pre_ASR_NA;
             ++ctx->pcs[ 4 ]
           ) {
-            entry = RtemsSignalReqCatch_GetEntry( index );
-
-            if ( entry.Pre_ASR_NA ) {
-              ctx->pcs[ 4 ] = RtemsSignalReqCatch_Pre_ASR_NA;
-              index += ( RtemsSignalReqCatch_Pre_ASR_NA - 1 )
-                * RtemsSignalReqCatch_Pre_IntLvl_NA;
-            }
-
             for (
               ctx->pcs[ 5 ] = RtemsSignalReqCatch_Pre_IntLvl_Zero;
               ctx->pcs[ 5 ] < RtemsSignalReqCatch_Pre_IntLvl_NA;
               ++ctx->pcs[ 5 ]
             ) {
-              entry = RtemsSignalReqCatch_GetEntry( index );
+              RtemsSignalReqCatch_Entry entry;
 
-              if ( entry.Pre_IntLvl_NA ) {
-                ctx->pcs[ 5 ] = RtemsSignalReqCatch_Pre_IntLvl_NA;
-                index += ( RtemsSignalReqCatch_Pre_IntLvl_NA - 1 );
-              }
-
-              if ( entry.Skip ) {
-                ++index;
-                continue;
-              }
+              entry = RtemsSignalReqCatch_GetEntry( index );
+              ++index;
 
               RtemsSignalReqCatch_Prepare( ctx );
               RtemsSignalReqCatch_Pre_Pending_Prepare( ctx, ctx->pcs[ 0 ] );
@@ -937,7 +879,6 @@ T_TEST_CASE_FIXTURE( RtemsSignalReqCatch, &RtemsSignalReqCatch_Fixture )
                 ctx,
                 entry.Post_ASRInfo
               );
-              ++index;
             }
           }
         }
diff --git a/testsuites/validation/tc-signal-send.c b/testsuites/validation/tc-signal-send.c
index 1f5df24..2359855 100644
--- a/testsuites/validation/tc-signal-send.c
+++ b/testsuites/validation/tc-signal-send.c
@@ -812,7 +812,6 @@ static inline RtemsSignalReqSend_Entry RtemsSignalReqSend_GetEntry(
 T_TEST_CASE_FIXTURE( RtemsSignalReqSend, &RtemsSignalReqSend_Fixture )
 {
   RtemsSignalReqSend_Context *ctx;
-  RtemsSignalReqSend_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -824,75 +823,30 @@ T_TEST_CASE_FIXTURE( RtemsSignalReqSend, &RtemsSignalReqSend_Fixture )
     ctx->pcs[ 0 ] < RtemsSignalReqSend_Pre_Task_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsSignalReqSend_GetEntry( index );
-
-    if ( entry.Pre_Task_NA ) {
-      ctx->pcs[ 0 ] = RtemsSignalReqSend_Pre_Task_NA;
-      index += ( RtemsSignalReqSend_Pre_Task_NA - 1 )
-        * RtemsSignalReqSend_Pre_Set_NA
-        * RtemsSignalReqSend_Pre_Handler_NA
-        * RtemsSignalReqSend_Pre_ASR_NA
-        * RtemsSignalReqSend_Pre_Nested_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsSignalReqSend_Pre_Set_Zero;
       ctx->pcs[ 1 ] < RtemsSignalReqSend_Pre_Set_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsSignalReqSend_GetEntry( index );
-
-      if ( entry.Pre_Set_NA ) {
-        ctx->pcs[ 1 ] = RtemsSignalReqSend_Pre_Set_NA;
-        index += ( RtemsSignalReqSend_Pre_Set_NA - 1 )
-          * RtemsSignalReqSend_Pre_Handler_NA
-          * RtemsSignalReqSend_Pre_ASR_NA
-          * RtemsSignalReqSend_Pre_Nested_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsSignalReqSend_Pre_Handler_Invalid;
         ctx->pcs[ 2 ] < RtemsSignalReqSend_Pre_Handler_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsSignalReqSend_GetEntry( index );
-
-        if ( entry.Pre_Handler_NA ) {
-          ctx->pcs[ 2 ] = RtemsSignalReqSend_Pre_Handler_NA;
-          index += ( RtemsSignalReqSend_Pre_Handler_NA - 1 )
-            * RtemsSignalReqSend_Pre_ASR_NA
-            * RtemsSignalReqSend_Pre_Nested_NA;
-        }
-
         for (
           ctx->pcs[ 3 ] = RtemsSignalReqSend_Pre_ASR_Enabled;
           ctx->pcs[ 3 ] < RtemsSignalReqSend_Pre_ASR_NA;
           ++ctx->pcs[ 3 ]
         ) {
-          entry = RtemsSignalReqSend_GetEntry( index );
-
-          if ( entry.Pre_ASR_NA ) {
-            ctx->pcs[ 3 ] = RtemsSignalReqSend_Pre_ASR_NA;
-            index += ( RtemsSignalReqSend_Pre_ASR_NA - 1 )
-              * RtemsSignalReqSend_Pre_Nested_NA;
-          }
-
           for (
             ctx->pcs[ 4 ] = RtemsSignalReqSend_Pre_Nested_Yes;
             ctx->pcs[ 4 ] < RtemsSignalReqSend_Pre_Nested_NA;
             ++ctx->pcs[ 4 ]
           ) {
-            entry = RtemsSignalReqSend_GetEntry( index );
-
-            if ( entry.Pre_Nested_NA ) {
-              ctx->pcs[ 4 ] = RtemsSignalReqSend_Pre_Nested_NA;
-              index += ( RtemsSignalReqSend_Pre_Nested_NA - 1 );
-            }
+            RtemsSignalReqSend_Entry entry;
 
-            if ( entry.Skip ) {
-              ++index;
-              continue;
-            }
+            entry = RtemsSignalReqSend_GetEntry( index );
+            ++index;
 
             RtemsSignalReqSend_Prepare( ctx );
             RtemsSignalReqSend_Pre_Task_Prepare( ctx, ctx->pcs[ 0 ] );
@@ -907,7 +861,6 @@ T_TEST_CASE_FIXTURE( RtemsSignalReqSend, &RtemsSignalReqSend_Fixture )
               ctx,
               entry.Post_Recursive
             );
-            ++index;
           }
         }
       }
diff --git a/testsuites/validation/tc-task-construct-errors.c b/testsuites/validation/tc-task-construct-errors.c
index 5c34e79..e6f8c5f 100644
--- a/testsuites/validation/tc-task-construct-errors.c
+++ b/testsuites/validation/tc-task-construct-errors.c
@@ -1074,7 +1074,6 @@ T_TEST_CASE_FIXTURE(
 )
 {
   RtemsTaskReqConstructErrors_Context *ctx;
-  RtemsTaskReqConstructErrors_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -1086,149 +1085,50 @@ T_TEST_CASE_FIXTURE(
     ctx->pcs[ 0 ] < RtemsTaskReqConstructErrors_Pre_Config_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-    if ( entry.Pre_Config_NA ) {
-      ctx->pcs[ 0 ] = RtemsTaskReqConstructErrors_Pre_Config_NA;
-      index += ( RtemsTaskReqConstructErrors_Pre_Config_NA - 1 )
-        * RtemsTaskReqConstructErrors_Pre_Name_NA
-        * RtemsTaskReqConstructErrors_Pre_Id_NA
-        * RtemsTaskReqConstructErrors_Pre_SysTsk_NA
-        * RtemsTaskReqConstructErrors_Pre_Prio_NA
-        * RtemsTaskReqConstructErrors_Pre_Free_NA
-        * RtemsTaskReqConstructErrors_Pre_TLS_NA
-        * RtemsTaskReqConstructErrors_Pre_Stack_NA
-        * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsTaskReqConstructErrors_Pre_Name_Valid;
       ctx->pcs[ 1 ] < RtemsTaskReqConstructErrors_Pre_Name_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-      if ( entry.Pre_Name_NA ) {
-        ctx->pcs[ 1 ] = RtemsTaskReqConstructErrors_Pre_Name_NA;
-        index += ( RtemsTaskReqConstructErrors_Pre_Name_NA - 1 )
-          * RtemsTaskReqConstructErrors_Pre_Id_NA
-          * RtemsTaskReqConstructErrors_Pre_SysTsk_NA
-          * RtemsTaskReqConstructErrors_Pre_Prio_NA
-          * RtemsTaskReqConstructErrors_Pre_Free_NA
-          * RtemsTaskReqConstructErrors_Pre_TLS_NA
-          * RtemsTaskReqConstructErrors_Pre_Stack_NA
-          * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsTaskReqConstructErrors_Pre_Id_Valid;
         ctx->pcs[ 2 ] < RtemsTaskReqConstructErrors_Pre_Id_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-        if ( entry.Pre_Id_NA ) {
-          ctx->pcs[ 2 ] = RtemsTaskReqConstructErrors_Pre_Id_NA;
-          index += ( RtemsTaskReqConstructErrors_Pre_Id_NA - 1 )
-            * RtemsTaskReqConstructErrors_Pre_SysTsk_NA
-            * RtemsTaskReqConstructErrors_Pre_Prio_NA
-            * RtemsTaskReqConstructErrors_Pre_Free_NA
-            * RtemsTaskReqConstructErrors_Pre_TLS_NA
-            * RtemsTaskReqConstructErrors_Pre_Stack_NA
-            * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-        }
-
         for (
           ctx->pcs[ 3 ] = RtemsTaskReqConstructErrors_Pre_SysTsk_Yes;
           ctx->pcs[ 3 ] < RtemsTaskReqConstructErrors_Pre_SysTsk_NA;
           ++ctx->pcs[ 3 ]
         ) {
-          entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-          if ( entry.Pre_SysTsk_NA ) {
-            ctx->pcs[ 3 ] = RtemsTaskReqConstructErrors_Pre_SysTsk_NA;
-            index += ( RtemsTaskReqConstructErrors_Pre_SysTsk_NA - 1 )
-              * RtemsTaskReqConstructErrors_Pre_Prio_NA
-              * RtemsTaskReqConstructErrors_Pre_Free_NA
-              * RtemsTaskReqConstructErrors_Pre_TLS_NA
-              * RtemsTaskReqConstructErrors_Pre_Stack_NA
-              * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-          }
-
           for (
             ctx->pcs[ 4 ] = RtemsTaskReqConstructErrors_Pre_Prio_Valid;
             ctx->pcs[ 4 ] < RtemsTaskReqConstructErrors_Pre_Prio_NA;
             ++ctx->pcs[ 4 ]
           ) {
-            entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-            if ( entry.Pre_Prio_NA ) {
-              ctx->pcs[ 4 ] = RtemsTaskReqConstructErrors_Pre_Prio_NA;
-              index += ( RtemsTaskReqConstructErrors_Pre_Prio_NA - 1 )
-                * RtemsTaskReqConstructErrors_Pre_Free_NA
-                * RtemsTaskReqConstructErrors_Pre_TLS_NA
-                * RtemsTaskReqConstructErrors_Pre_Stack_NA
-                * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-            }
-
             for (
               ctx->pcs[ 5 ] = RtemsTaskReqConstructErrors_Pre_Free_Yes;
               ctx->pcs[ 5 ] < RtemsTaskReqConstructErrors_Pre_Free_NA;
               ++ctx->pcs[ 5 ]
             ) {
-              entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-              if ( entry.Pre_Free_NA ) {
-                ctx->pcs[ 5 ] = RtemsTaskReqConstructErrors_Pre_Free_NA;
-                index += ( RtemsTaskReqConstructErrors_Pre_Free_NA - 1 )
-                  * RtemsTaskReqConstructErrors_Pre_TLS_NA
-                  * RtemsTaskReqConstructErrors_Pre_Stack_NA
-                  * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-              }
-
               for (
                 ctx->pcs[ 6 ] = RtemsTaskReqConstructErrors_Pre_TLS_Enough;
                 ctx->pcs[ 6 ] < RtemsTaskReqConstructErrors_Pre_TLS_NA;
                 ++ctx->pcs[ 6 ]
               ) {
-                entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-                if ( entry.Pre_TLS_NA ) {
-                  ctx->pcs[ 6 ] = RtemsTaskReqConstructErrors_Pre_TLS_NA;
-                  index += ( RtemsTaskReqConstructErrors_Pre_TLS_NA - 1 )
-                    * RtemsTaskReqConstructErrors_Pre_Stack_NA
-                    * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-                }
-
                 for (
                   ctx->pcs[ 7 ] = RtemsTaskReqConstructErrors_Pre_Stack_Enough;
                   ctx->pcs[ 7 ] < RtemsTaskReqConstructErrors_Pre_Stack_NA;
                   ++ctx->pcs[ 7 ]
                 ) {
-                  entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-                  if ( entry.Pre_Stack_NA ) {
-                    ctx->pcs[ 7 ] = RtemsTaskReqConstructErrors_Pre_Stack_NA;
-                    index += ( RtemsTaskReqConstructErrors_Pre_Stack_NA - 1 )
-                      * RtemsTaskReqConstructErrors_Pre_Ext_NA;
-                  }
-
                   for (
                     ctx->pcs[ 8 ] = RtemsTaskReqConstructErrors_Pre_Ext_Ok;
                     ctx->pcs[ 8 ] < RtemsTaskReqConstructErrors_Pre_Ext_NA;
                     ++ctx->pcs[ 8 ]
                   ) {
-                    entry = RtemsTaskReqConstructErrors_GetEntry( index );
-
-                    if ( entry.Pre_Ext_NA ) {
-                      ctx->pcs[ 8 ] = RtemsTaskReqConstructErrors_Pre_Ext_NA;
-                      index += ( RtemsTaskReqConstructErrors_Pre_Ext_NA - 1 );
-                    }
+                    RtemsTaskReqConstructErrors_Entry entry;
 
-                    if ( entry.Skip ) {
-                      ++index;
-                      continue;
-                    }
+                    entry = RtemsTaskReqConstructErrors_GetEntry( index );
+                    ++index;
 
                     RtemsTaskReqConstructErrors_Prepare( ctx );
                     RtemsTaskReqConstructErrors_Pre_Config_Prepare(
@@ -1293,7 +1193,6 @@ T_TEST_CASE_FIXTURE(
                       entry.Post_StoFree
                     );
                     RtemsTaskReqConstructErrors_Cleanup( ctx );
-                    ++index;
                   }
                 }
               }
diff --git a/testsuites/validation/tc-task-create-errors.c b/testsuites/validation/tc-task-create-errors.c
index 1733201..3121d75 100644
--- a/testsuites/validation/tc-task-create-errors.c
+++ b/testsuites/validation/tc-task-create-errors.c
@@ -885,7 +885,6 @@ T_TEST_CASE_FIXTURE(
 )
 {
   RtemsTaskReqCreateErrors_Context *ctx;
-  RtemsTaskReqCreateErrors_Entry entry;
   size_t index;
 
   ctx = T_fixture_context();
@@ -897,110 +896,40 @@ T_TEST_CASE_FIXTURE(
     ctx->pcs[ 0 ] < RtemsTaskReqCreateErrors_Pre_Name_NA;
     ++ctx->pcs[ 0 ]
   ) {
-    entry = RtemsTaskReqCreateErrors_GetEntry( index );
-
-    if ( entry.Pre_Name_NA ) {
-      ctx->pcs[ 0 ] = RtemsTaskReqCreateErrors_Pre_Name_NA;
-      index += ( RtemsTaskReqCreateErrors_Pre_Name_NA - 1 )
-        * RtemsTaskReqCreateErrors_Pre_Id_NA
-        * RtemsTaskReqCreateErrors_Pre_SysTsk_NA
-        * RtemsTaskReqCreateErrors_Pre_Prio_NA
-        * RtemsTaskReqCreateErrors_Pre_Free_NA
-        * RtemsTaskReqCreateErrors_Pre_Stack_NA
-        * RtemsTaskReqCreateErrors_Pre_Ext_NA;
-    }
-
     for (
       ctx->pcs[ 1 ] = RtemsTaskReqCreateErrors_Pre_Id_Valid;
       ctx->pcs[ 1 ] < RtemsTaskReqCreateErrors_Pre_Id_NA;
       ++ctx->pcs[ 1 ]
     ) {
-      entry = RtemsTaskReqCreateErrors_GetEntry( index );
-
-      if ( entry.Pre_Id_NA ) {
-        ctx->pcs[ 1 ] = RtemsTaskReqCreateErrors_Pre_Id_NA;
-        index += ( RtemsTaskReqCreateErrors_Pre_Id_NA - 1 )
-          * RtemsTaskReqCreateErrors_Pre_SysTsk_NA
-          * RtemsTaskReqCreateErrors_Pre_Prio_NA
-          * RtemsTaskReqCreateErrors_Pre_Free_NA
-          * RtemsTaskReqCreateErrors_Pre_Stack_NA
-          * RtemsTaskReqCreateErrors_Pre_Ext_NA;
-      }
-
       for (
         ctx->pcs[ 2 ] = RtemsTaskReqCreateErrors_Pre_SysTsk_Yes;
         ctx->pcs[ 2 ] < RtemsTaskReqCreateErrors_Pre_SysTsk_NA;
         ++ctx->pcs[ 2 ]
       ) {
-        entry = RtemsTaskReqCreateErrors_GetEntry( index );
-
-        if ( entry.Pre_SysTsk_NA ) {
-          ctx->pcs[ 2 ] = RtemsTaskReqCreateErrors_Pre_SysTsk_NA;
-          index += ( RtemsTaskReqCreateErrors_Pre_SysTsk_NA - 1 )
-            * RtemsTaskReqCreateErrors_Pre_Prio_NA
-            * RtemsTaskReqCreateErrors_Pre_Free_NA
-            * RtemsTaskReqCreateErrors_Pre_Stack_NA
-            * RtemsTaskReqCreateErrors_Pre_Ext_NA;
-        }
-
         for (
           ctx->pcs[ 3 ] = RtemsTaskReqCreateErrors_Pre_Prio_Valid;
           ctx->pcs[ 3 ] < RtemsTaskReqCreateErrors_Pre_Prio_NA;
           ++ctx->pcs[ 3 ]
         ) {
-          entry = RtemsTaskReqCreateErrors_GetEntry( index );
-
-          if ( entry.Pre_Prio_NA ) {
-            ctx->pcs[ 3 ] = RtemsTaskReqCreateErrors_Pre_Prio_NA;
-            index += ( RtemsTaskReqCreateErrors_Pre_Prio_NA - 1 )
-              * RtemsTaskReqCreateErrors_Pre_Free_NA
-              * RtemsTaskReqCreateErrors_Pre_Stack_NA
-              * RtemsTaskReqCreateErrors_Pre_Ext_NA;
-          }
-
           for (
             ctx->pcs[ 4 ] = RtemsTaskReqCreateErrors_Pre_Free_Yes;
             ctx->pcs[ 4 ] < RtemsTaskReqCreateErrors_Pre_Free_NA;
             ++ctx->pcs[ 4 ]
           ) {
-            entry = RtemsTaskReqCreateErrors_GetEntry( index );
-
-            if ( entry.Pre_Free_NA ) {
-              ctx->pcs[ 4 ] = RtemsTaskReqCreateErrors_Pre_Free_NA;
-              index += ( RtemsTaskReqCreateErrors_Pre_Free_NA - 1 )
-                * RtemsTaskReqCreateErrors_Pre_Stack_NA
-                * RtemsTaskReqCreateErrors_Pre_Ext_NA;
-            }
-
             for (
               ctx->pcs[ 5 ] = RtemsTaskReqCreateErrors_Pre_Stack_Normal;
               ctx->pcs[ 5 ] < RtemsTaskReqCreateErrors_Pre_Stack_NA;
               ++ctx->pcs[ 5 ]
             ) {
-              entry = RtemsTaskReqCreateErrors_GetEntry( index );
-
-              if ( entry.Pre_Stack_NA ) {
-                ctx->pcs[ 5 ] = RtemsTaskReqCreateErrors_Pre_Stack_NA;
-                index += ( RtemsTaskReqCreateErrors_Pre_Stack_NA - 1 )
-                  * RtemsTaskReqCreateErrors_Pre_Ext_NA;
-              }
-
               for (
                 ctx->pcs[ 6 ] = RtemsTaskReqCreateErrors_Pre_Ext_Ok;
                 ctx->pcs[ 6 ] < RtemsTaskReqCreateErrors_Pre_Ext_NA;
                 ++ctx->pcs[ 6 ]
               ) {
-                entry = RtemsTaskReqCreateErrors_GetEntry( index );
+                RtemsTaskReqCreateErrors_Entry entry;
 
-                if ( entry.Pre_Ext_NA ) {
-                  ctx->pcs[ 6 ] = RtemsTaskReqCreateErrors_Pre_Ext_NA;
-                  index += ( RtemsTaskReqCreateErrors_Pre_Ext_NA - 1 );
-                }
-
-                if ( entry.Skip ) {
-                  ++index;
-                  continue;
-                }
+                entry = RtemsTaskReqCreateErrors_GetEntry( index );
+                ++index;
 
                 RtemsTaskReqCreateErrors_Prepare( ctx );
                 RtemsTaskReqCreateErrors_Pre_Name_Prepare(
@@ -1047,7 +976,6 @@ T_TEST_CASE_FIXTURE(
                   entry.Post_DelExt
                 );
                 RtemsTaskReqCreateErrors_Cleanup( ctx );
-                ++index;
               }
             }
           }



More information about the vc mailing list