testLoops: add testLoops_trueFlagsFunction

Instead of using *trueFlagsPtr. This will allow us to test
code paths that depend on certain flags already being set.

Signed-off-by: Emilio G. Cota <cota@braap.org>
diff --git a/source/testLoops.h b/source/testLoops.h
index f9b88d7..8671fc5 100644
--- a/source/testLoops.h
+++ b/source/testLoops.h
@@ -42,7 +42,7 @@
 
 extern bool testLoops_forever;
 
-extern uint_fast8_t *testLoops_trueFlagsPtr;
+extern uint_fast8_t (*testLoops_trueFlagsFunction)( void );
 extern uint_fast8_t (*testLoops_subjFlagsFunction)( void );
 
 /*----------------------------------------------------------------------------
diff --git a/source/testLoops_common.c b/source/testLoops_common.c
index ea6a53d..5468a2c 100644
--- a/source/testLoops_common.c
+++ b/source/testLoops_common.c
@@ -42,6 +42,6 @@
 
 bool testLoops_forever = false;
 
-uint_fast8_t *testLoops_trueFlagsPtr;
+uint_fast8_t (*testLoops_trueFlagsFunction)( void );
 uint_fast8_t (*testLoops_subjFlagsFunction)( void );
 
diff --git a/source/test_a_extF80_z_f128.c b/source/test_a_extF80_z_f128.c
index d454095..a459acb 100644
--- a/source/test_a_extF80_z_f128.c
+++ b/source/test_a_extF80_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_extF80_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_extF80_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_f16.c b/source/test_a_extF80_z_f16.c
index a1e4f8c..21ec4f6 100644
--- a/source/test_a_extF80_z_f16.c
+++ b/source/test_a_extF80_z_f16.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_f32.c b/source/test_a_extF80_z_f32.c
index ff0e31a..c0d1d57 100644
--- a/source/test_a_extF80_z_f32.c
+++ b/source/test_a_extF80_z_f32.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_f64.c b/source/test_a_extF80_z_f64.c
index b105228..253f2b4 100644
--- a/source/test_a_extF80_z_f64.c
+++ b/source/test_a_extF80_z_f64.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_i32_rx.c b/source/test_a_extF80_z_i32_rx.c
index fa9fe98..605e831 100644
--- a/source/test_a_extF80_z_i32_rx.c
+++ b/source/test_a_extF80_z_i32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_i32_x.c b/source/test_a_extF80_z_i32_x.c
index b3dc9c9..9fe0375 100644
--- a/source/test_a_extF80_z_i32_x.c
+++ b/source/test_a_extF80_z_i32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_i64_rx.c b/source/test_a_extF80_z_i64_rx.c
index 0d71159..802d622 100644
--- a/source/test_a_extF80_z_i64_rx.c
+++ b/source/test_a_extF80_z_i64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_i64_x.c b/source/test_a_extF80_z_i64_x.c
index bfa9a6a..aa33cbf 100644
--- a/source/test_a_extF80_z_i64_x.c
+++ b/source/test_a_extF80_z_i64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_ui32_rx.c b/source/test_a_extF80_z_ui32_rx.c
index 9fa9cff..bae1fae 100644
--- a/source/test_a_extF80_z_ui32_rx.c
+++ b/source/test_a_extF80_z_ui32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_ui32_x.c b/source/test_a_extF80_z_ui32_x.c
index df7d820..7fa8df3 100644
--- a/source/test_a_extF80_z_ui32_x.c
+++ b/source/test_a_extF80_z_ui32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_ui64_rx.c b/source/test_a_extF80_z_ui64_rx.c
index 3a768d7..bd9ffa5 100644
--- a/source/test_a_extF80_z_ui64_rx.c
+++ b/source/test_a_extF80_z_ui64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_extF80_z_ui64_x.c b/source/test_a_extF80_z_ui64_x.c
index 48c5965..58ef5d6 100644
--- a/source/test_a_extF80_z_ui64_x.c
+++ b/source/test_a_extF80_z_ui64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_extF80.c b/source/test_a_f128_z_extF80.c
index ec7dfbb..5051c25 100644
--- a/source/test_a_f128_z_extF80.c
+++ b/source/test_a_f128_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_f128_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_f128_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_f16.c b/source/test_a_f128_z_f16.c
index 1254078..9f7a4df 100644
--- a/source/test_a_f128_z_f16.c
+++ b/source/test_a_f128_z_f16.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_f32.c b/source/test_a_f128_z_f32.c
index 24cae7d..4217e78 100644
--- a/source/test_a_f128_z_f32.c
+++ b/source/test_a_f128_z_f32.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_f64.c b/source/test_a_f128_z_f64.c
index bcd91bc..7d7de58 100644
--- a/source/test_a_f128_z_f64.c
+++ b/source/test_a_f128_z_f64.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_i32_rx.c b/source/test_a_f128_z_i32_rx.c
index 9084833..ea5858f 100644
--- a/source/test_a_f128_z_i32_rx.c
+++ b/source/test_a_f128_z_i32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_i32_x.c b/source/test_a_f128_z_i32_x.c
index 5295176..f49cee3 100644
--- a/source/test_a_f128_z_i32_x.c
+++ b/source/test_a_f128_z_i32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_i64_rx.c b/source/test_a_f128_z_i64_rx.c
index e7da2f0..c093cae 100644
--- a/source/test_a_f128_z_i64_rx.c
+++ b/source/test_a_f128_z_i64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_i64_x.c b/source/test_a_f128_z_i64_x.c
index 0597367..fa44b2b 100644
--- a/source/test_a_f128_z_i64_x.c
+++ b/source/test_a_f128_z_i64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_ui32_rx.c b/source/test_a_f128_z_ui32_rx.c
index 31ede56..489594a 100644
--- a/source/test_a_f128_z_ui32_rx.c
+++ b/source/test_a_f128_z_ui32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_ui32_x.c b/source/test_a_f128_z_ui32_x.c
index b5623e1..7312b99 100644
--- a/source/test_a_f128_z_ui32_x.c
+++ b/source/test_a_f128_z_ui32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_ui64_rx.c b/source/test_a_f128_z_ui64_rx.c
index cd58c92..959bc36 100644
--- a/source/test_a_f128_z_ui64_rx.c
+++ b/source/test_a_f128_z_ui64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f128_z_ui64_x.c b/source/test_a_f128_z_ui64_x.c
index 9e103f8..af80d2a 100644
--- a/source/test_a_f128_z_ui64_x.c
+++ b/source/test_a_f128_z_ui64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_extF80.c b/source/test_a_f16_z_extF80.c
index dc442af..3008ac2 100644
--- a/source/test_a_f16_z_extF80.c
+++ b/source/test_a_f16_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_f16_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_f16_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_f128.c b/source/test_a_f16_z_f128.c
index 49c1fe7..81486fe 100644
--- a/source/test_a_f16_z_f128.c
+++ b/source/test_a_f16_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_f16_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_f16_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_f32.c b/source/test_a_f16_z_f32.c
index 097e9cc..b314cf9 100644
--- a/source/test_a_f16_z_f32.c
+++ b/source/test_a_f16_z_f32.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_f64.c b/source/test_a_f16_z_f64.c
index 349cc69..fd2eecf 100644
--- a/source/test_a_f16_z_f64.c
+++ b/source/test_a_f16_z_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_i32_rx.c b/source/test_a_f16_z_i32_rx.c
index ecb5f69..9825e4a 100644
--- a/source/test_a_f16_z_i32_rx.c
+++ b/source/test_a_f16_z_i32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_i32_x.c b/source/test_a_f16_z_i32_x.c
index 373eaf2..10d8d23 100644
--- a/source/test_a_f16_z_i32_x.c
+++ b/source/test_a_f16_z_i32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_i64_rx.c b/source/test_a_f16_z_i64_rx.c
index 0ffdd63..f4c1648 100644
--- a/source/test_a_f16_z_i64_rx.c
+++ b/source/test_a_f16_z_i64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_i64_x.c b/source/test_a_f16_z_i64_x.c
index df73dd5..a94941f 100644
--- a/source/test_a_f16_z_i64_x.c
+++ b/source/test_a_f16_z_i64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_ui32_rx.c b/source/test_a_f16_z_ui32_rx.c
index 434dd4c..424b021 100644
--- a/source/test_a_f16_z_ui32_rx.c
+++ b/source/test_a_f16_z_ui32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_ui32_x.c b/source/test_a_f16_z_ui32_x.c
index 392c3bd..1a8e3dc 100644
--- a/source/test_a_f16_z_ui32_x.c
+++ b/source/test_a_f16_z_ui32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_ui64_rx.c b/source/test_a_f16_z_ui64_rx.c
index 8b47c95..55bf4d2 100644
--- a/source/test_a_f16_z_ui64_rx.c
+++ b/source/test_a_f16_z_ui64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f16_z_ui64_x.c b/source/test_a_f16_z_ui64_x.c
index e13ab5e..c578460 100644
--- a/source/test_a_f16_z_ui64_x.c
+++ b/source/test_a_f16_z_ui64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_extF80.c b/source/test_a_f32_z_extF80.c
index f0473ff..381963c 100644
--- a/source/test_a_f32_z_extF80.c
+++ b/source/test_a_f32_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_f32_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_f32_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_f128.c b/source/test_a_f32_z_f128.c
index 956e292..40f730d 100644
--- a/source/test_a_f32_z_f128.c
+++ b/source/test_a_f32_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_f32_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_f32_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_f16.c b/source/test_a_f32_z_f16.c
index 3f9e4ab..1f22a46 100644
--- a/source/test_a_f32_z_f16.c
+++ b/source/test_a_f32_z_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_f64.c b/source/test_a_f32_z_f64.c
index c1d8c4d..53de571 100644
--- a/source/test_a_f32_z_f64.c
+++ b/source/test_a_f32_z_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_i32_rx.c b/source/test_a_f32_z_i32_rx.c
index 12d2053..0a8dc98 100644
--- a/source/test_a_f32_z_i32_rx.c
+++ b/source/test_a_f32_z_i32_rx.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_i32_x.c b/source/test_a_f32_z_i32_x.c
index df920ae..ba9ec88 100644
--- a/source/test_a_f32_z_i32_x.c
+++ b/source/test_a_f32_z_i32_x.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_i64_rx.c b/source/test_a_f32_z_i64_rx.c
index 44efc79..b063f1a 100644
--- a/source/test_a_f32_z_i64_rx.c
+++ b/source/test_a_f32_z_i64_rx.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_i64_x.c b/source/test_a_f32_z_i64_x.c
index a8dc17a..318535c 100644
--- a/source/test_a_f32_z_i64_x.c
+++ b/source/test_a_f32_z_i64_x.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_ui32_rx.c b/source/test_a_f32_z_ui32_rx.c
index 62f865c..1b295b7 100644
--- a/source/test_a_f32_z_ui32_rx.c
+++ b/source/test_a_f32_z_ui32_rx.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_ui32_x.c b/source/test_a_f32_z_ui32_x.c
index 91589c4..cd79e37 100644
--- a/source/test_a_f32_z_ui32_x.c
+++ b/source/test_a_f32_z_ui32_x.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_ui64_rx.c b/source/test_a_f32_z_ui64_rx.c
index 021102d..35ab165 100644
--- a/source/test_a_f32_z_ui64_rx.c
+++ b/source/test_a_f32_z_ui64_rx.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f32_z_ui64_x.c b/source/test_a_f32_z_ui64_x.c
index 2287ccb..7a03d28 100644
--- a/source/test_a_f32_z_ui64_x.c
+++ b/source/test_a_f32_z_ui64_x.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_extF80.c b/source/test_a_f64_z_extF80.c
index ce18476..6698e07 100644
--- a/source/test_a_f64_z_extF80.c
+++ b/source/test_a_f64_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_f64_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_f64_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_f128.c b/source/test_a_f64_z_f128.c
index 3f36e9e..53df172 100644
--- a/source/test_a_f64_z_f128.c
+++ b/source/test_a_f64_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_f64_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_f64_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_f16.c b/source/test_a_f64_z_f16.c
index 63f6c15..34e2f80 100644
--- a/source/test_a_f64_z_f16.c
+++ b/source/test_a_f64_z_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_f32.c b/source/test_a_f64_z_f32.c
index 8fdad44..63a8f07 100644
--- a/source/test_a_f64_z_f32.c
+++ b/source/test_a_f64_z_f32.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_i32_rx.c b/source/test_a_f64_z_i32_rx.c
index bd20ad9..407cb9f 100644
--- a/source/test_a_f64_z_i32_rx.c
+++ b/source/test_a_f64_z_i32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_i32_x.c b/source/test_a_f64_z_i32_x.c
index cf1ab50..a8b55e7 100644
--- a/source/test_a_f64_z_i32_x.c
+++ b/source/test_a_f64_z_i32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_i64_rx.c b/source/test_a_f64_z_i64_rx.c
index 93dc6a0..9f79804 100644
--- a/source/test_a_f64_z_i64_rx.c
+++ b/source/test_a_f64_z_i64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_i64_x.c b/source/test_a_f64_z_i64_x.c
index 6b1eade..8cd66bd 100644
--- a/source/test_a_f64_z_i64_x.c
+++ b/source/test_a_f64_z_i64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_ui32_rx.c b/source/test_a_f64_z_ui32_rx.c
index a797467..f4aa045 100644
--- a/source/test_a_f64_z_ui32_rx.c
+++ b/source/test_a_f64_z_ui32_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_ui32_x.c b/source/test_a_f64_z_ui32_x.c
index 40a6ee1..b30ac96 100644
--- a/source/test_a_f64_z_ui32_x.c
+++ b/source/test_a_f64_z_ui32_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_ui64_rx.c b/source/test_a_f64_z_ui64_rx.c
index 83068dd..e28cd48 100644
--- a/source/test_a_f64_z_ui64_rx.c
+++ b/source/test_a_f64_z_ui64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_f64_z_ui64_x.c b/source/test_a_f64_z_ui64_x.c
index 38e7d55..f8ff454 100644
--- a/source/test_a_f64_z_ui64_x.c
+++ b/source/test_a_f64_z_ui64_x.c
@@ -68,9 +68,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i32_z_extF80.c b/source/test_a_i32_z_extF80.c
index 506f9e6..d75e7ee 100644
--- a/source/test_a_i32_z_extF80.c
+++ b/source/test_a_i32_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_i32_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_i32_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i32_z_f128.c b/source/test_a_i32_z_f128.c
index 40e2f01..0e7461f 100644
--- a/source/test_a_i32_z_f128.c
+++ b/source/test_a_i32_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_i32_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_i32_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i32_z_f16.c b/source/test_a_i32_z_f16.c
index 7c85d53..b26f595 100644
--- a/source/test_a_i32_z_f16.c
+++ b/source/test_a_i32_z_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_i32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_i32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i32_z_f32.c b/source/test_a_i32_z_f32.c
index fa2f865..05d6a33 100644
--- a/source/test_a_i32_z_f32.c
+++ b/source/test_a_i32_z_f32.c
@@ -62,9 +62,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_i32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_i32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i32_z_f64.c b/source/test_a_i32_z_f64.c
index 0dbad0b..095f000 100644
--- a/source/test_a_i32_z_f64.c
+++ b/source/test_a_i32_z_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_i32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_i32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i64_z_extF80.c b/source/test_a_i64_z_extF80.c
index d8dc8d5..42a917c 100644
--- a/source/test_a_i64_z_extF80.c
+++ b/source/test_a_i64_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_i64_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_i64_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i64_z_f128.c b/source/test_a_i64_z_f128.c
index f44f520..5066642 100644
--- a/source/test_a_i64_z_f128.c
+++ b/source/test_a_i64_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_i64_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_i64_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i64_z_f16.c b/source/test_a_i64_z_f16.c
index 53551b3..d1030ab 100644
--- a/source/test_a_i64_z_f16.c
+++ b/source/test_a_i64_z_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_i64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_i64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i64_z_f32.c b/source/test_a_i64_z_f32.c
index 19695c8..9b7a8d1 100644
--- a/source/test_a_i64_z_f32.c
+++ b/source/test_a_i64_z_f32.c
@@ -62,9 +62,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_i64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_i64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_i64_z_f64.c b/source/test_a_i64_z_f64.c
index 24c96c6..df3e28b 100644
--- a/source/test_a_i64_z_f64.c
+++ b/source/test_a_i64_z_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_i64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_i64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_i64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui32_z_extF80.c b/source/test_a_ui32_z_extF80.c
index bdcb2bf..ee7ec9a 100644
--- a/source/test_a_ui32_z_extF80.c
+++ b/source/test_a_ui32_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_ui32_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_ui32_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui32_z_f128.c b/source/test_a_ui32_z_f128.c
index 534cd9a..2c3685d 100644
--- a/source/test_a_ui32_z_f128.c
+++ b/source/test_a_ui32_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_ui32_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_ui32_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui32_z_f16.c b/source/test_a_ui32_z_f16.c
index 6a4cc0e..47b10fe 100644
--- a/source/test_a_ui32_z_f16.c
+++ b/source/test_a_ui32_z_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_ui32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_ui32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui32_z_f32.c b/source/test_a_ui32_z_f32.c
index fde8848..1709831 100644
--- a/source/test_a_ui32_z_f32.c
+++ b/source/test_a_ui32_z_f32.c
@@ -62,9 +62,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_ui32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_ui32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui32_z_f64.c b/source/test_a_ui32_z_f64.c
index b3f9d88..ebb6f09 100644
--- a/source/test_a_ui32_z_f64.c
+++ b/source/test_a_ui32_z_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_ui32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_ui32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui64_z_extF80.c b/source/test_a_ui64_z_extF80.c
index 325d500..2158b7d 100644
--- a/source/test_a_ui64_z_extF80.c
+++ b/source/test_a_ui64_z_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_ui64_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_ui64_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui64_z_f128.c b/source/test_a_ui64_z_f128.c
index 2a57c05..6d84545 100644
--- a/source/test_a_ui64_z_f128.c
+++ b/source/test_a_ui64_z_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( genCases_ui64_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( genCases_ui64_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui64_z_f16.c b/source/test_a_ui64_z_f16.c
index ce54c8f..1fa7cfd 100644
--- a/source/test_a_ui64_z_f16.c
+++ b/source/test_a_ui64_z_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_ui64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_ui64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui64_z_f32.c b/source/test_a_ui64_z_f32.c
index 4a6dda3..65b0e4b 100644
--- a/source/test_a_ui64_z_f32.c
+++ b/source/test_a_ui64_z_f32.c
@@ -62,9 +62,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_ui64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_ui64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_a_ui64_z_f64.c b/source/test_a_ui64_z_f64.c
index 9fc9cd1..187f7c5 100644
--- a/source/test_a_ui64_z_f64.c
+++ b/source/test_a_ui64_z_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_ui64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_ui64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_ui64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_ab_extF80_z_bool.c b/source/test_ab_extF80_z_bool.c
index 1a830bc..85f6a11 100644
--- a/source/test_ab_extF80_z_bool.c
+++ b/source/test_ab_extF80_z_bool.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_extF80_a, &genCases_extF80_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_extF80_a, &genCases_extF80_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_ab_f128_z_bool.c b/source/test_ab_f128_z_bool.c
index b5ee911..ca72920 100644
--- a/source/test_ab_f128_z_bool.c
+++ b/source/test_ab_f128_z_bool.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( &genCases_f128_a, &genCases_f128_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( &genCases_f128_a, &genCases_f128_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_ab_f16_z_bool.c b/source/test_ab_f16_z_bool.c
index 02be465..82919af 100644
--- a/source/test_ab_f16_z_bool.c
+++ b/source/test_ab_f16_z_bool.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, genCases_f16_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, genCases_f16_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_ab_f32_z_bool.c b/source/test_ab_f32_z_bool.c
index 677892e..b46f976 100644
--- a/source/test_ab_f32_z_bool.c
+++ b/source/test_ab_f32_z_bool.c
@@ -65,9 +65,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, genCases_f32_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, genCases_f32_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_ab_f64_z_bool.c b/source/test_ab_f64_z_bool.c
index 03b208d..c318085 100644
--- a/source/test_ab_f64_z_bool.c
+++ b/source/test_ab_f64_z_bool.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, genCases_f64_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, genCases_f64_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abcz_f128.c b/source/test_abcz_f128.c
index 8e62446..ec40f26 100644
--- a/source/test_abcz_f128.c
+++ b/source/test_abcz_f128.c
@@ -78,10 +78,10 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_abc_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction(
             &genCases_f128_a, &genCases_f128_b, &genCases_f128_c, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction(
             &genCases_f128_a, &genCases_f128_b, &genCases_f128_c, &subjZ );
diff --git a/source/test_abcz_f16.c b/source/test_abcz_f16.c
index 7e455c7..4cc4d7c 100644
--- a/source/test_abcz_f16.c
+++ b/source/test_abcz_f16.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_abc_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, genCases_f16_b, genCases_f16_c );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, genCases_f16_b, genCases_f16_c );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abcz_f32.c b/source/test_abcz_f32.c
index c7b06c4..73c3438 100644
--- a/source/test_abcz_f32.c
+++ b/source/test_abcz_f32.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_abc_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, genCases_f32_b, genCases_f32_c );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, genCases_f32_b, genCases_f32_c );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abcz_f64.c b/source/test_abcz_f64.c
index c15f042..d7ce698 100644
--- a/source/test_abcz_f64.c
+++ b/source/test_abcz_f64.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_abc_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, genCases_f64_b, genCases_f64_c );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, genCases_f64_b, genCases_f64_c );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abz_extF80.c b/source/test_abz_extF80.c
index 041e8b7..91466dc 100644
--- a/source/test_abz_extF80.c
+++ b/source/test_abz_extF80.c
@@ -70,9 +70,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_extF80_a, &genCases_extF80_b, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_extF80_a, &genCases_extF80_b, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abz_f128.c b/source/test_abz_f128.c
index 44f4d79..bd5752f 100644
--- a/source/test_abz_f128.c
+++ b/source/test_abz_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_f128_a, &genCases_f128_b, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_f128_a, &genCases_f128_b, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abz_f16.c b/source/test_abz_f16.c
index 40cd246..df9838b 100644
--- a/source/test_abz_f16.c
+++ b/source/test_abz_f16.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, genCases_f16_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, genCases_f16_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abz_f32.c b/source/test_abz_f32.c
index f31da82..f07f7c1 100644
--- a/source/test_abz_f32.c
+++ b/source/test_abz_f32.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, genCases_f32_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, genCases_f32_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_abz_f64.c b/source/test_abz_f64.c
index caded69..e286445 100644
--- a/source/test_abz_f64.c
+++ b/source/test_abz_f64.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_ab_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, genCases_f64_b );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, genCases_f64_b );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_extF80.c b/source/test_az_extF80.c
index c9e3ed1..24e4095 100644
--- a/source/test_az_extF80.c
+++ b/source/test_az_extF80.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_extF80_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_extF80_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_extF80_rx.c b/source/test_az_extF80_rx.c
index dd25111..5d8be09 100644
--- a/source/test_az_extF80_rx.c
+++ b/source/test_az_extF80_rx.c
@@ -71,9 +71,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_extF80_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_extF80_a, roundingMode, exact, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_extF80_a, roundingMode, exact, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f128.c b/source/test_az_f128.c
index fe4358c..17a4d8d 100644
--- a/source/test_az_f128.c
+++ b/source/test_az_f128.c
@@ -66,9 +66,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_f128_a, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_f128_a, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f128_rx.c b/source/test_az_f128_rx.c
index 53583fa..adb272b 100644
--- a/source/test_az_f128_rx.c
+++ b/source/test_az_f128_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f128_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueFunction( &genCases_f128_a, roundingMode, exact, &trueZ );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjFunction( &genCases_f128_a, roundingMode, exact, &subjZ );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f16.c b/source/test_az_f16.c
index a3c2b9a..43b40c2 100644
--- a/source/test_az_f16.c
+++ b/source/test_az_f16.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f16_rx.c b/source/test_az_f16_rx.c
index 2d1dd1e..7a922dd 100644
--- a/source/test_az_f16_rx.c
+++ b/source/test_az_f16_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f16_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f16_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f16_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f32.c b/source/test_az_f32.c
index 46d62e3..4e0590a 100644
--- a/source/test_az_f32.c
+++ b/source/test_az_f32.c
@@ -62,9 +62,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f32_rx.c b/source/test_az_f32_rx.c
index e3e9953..21a0397 100644
--- a/source/test_az_f32_rx.c
+++ b/source/test_az_f32_rx.c
@@ -67,9 +67,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f32_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f32_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f32_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f64.c b/source/test_az_f64.c
index 01f6760..2f09b46 100644
--- a/source/test_az_f64.c
+++ b/source/test_az_f64.c
@@ -64,9 +64,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/test_az_f64_rx.c b/source/test_az_f64_rx.c
index d0c6644..63d2b3c 100644
--- a/source/test_az_f64_rx.c
+++ b/source/test_az_f64_rx.c
@@ -69,9 +69,9 @@
     count = 10000;
     while ( ! genCases_done || testLoops_forever ) {
         genCases_f64_a_next();
-        *testLoops_trueFlagsPtr = 0;
+        testLoops_trueFlagsFunction();
         trueZ = trueFunction( genCases_f64_a, roundingMode, exact );
-        trueFlags = *testLoops_trueFlagsPtr;
+        trueFlags = testLoops_trueFlagsFunction();
         testLoops_subjFlagsFunction();
         subjZ = subjFunction( genCases_f64_a, roundingMode, exact );
         subjFlags = testLoops_subjFlagsFunction();
diff --git a/source/testfloat.c b/source/testfloat.c
index 87a1016..1dd5abe 100644
--- a/source/testfloat.c
+++ b/source/testfloat.c
@@ -1428,6 +1428,15 @@
 
 }
 
+static uint_fast8_t clearExceptionFlags( void )
+{
+    uint_fast8_t prevFlags;
+
+    prevFlags = slowfloat_exceptionFlags;
+    slowfloat_exceptionFlags = 0;
+    return prevFlags;
+}
+
 int main( int argc, char *argv[] )
 {
     bool haveFunctionArg;
@@ -1448,7 +1457,7 @@
     if ( argc <= 1 ) goto writeHelpMessage;
     genCases_setLevel( 1 );
     verCases_maxErrorCount = 20;
-    testLoops_trueFlagsPtr = &softfloat_exceptionFlags;
+    testLoops_trueFlagsFunction = clearExceptionFlags;
     testLoops_subjFlagsFunction = subjfloat_clearExceptionFlags;
     haveFunctionArg = false;
     standardFunctionInfoPtr = 0;
diff --git a/source/testsoftfloat.c b/source/testsoftfloat.c
index e60defe..3ed013a 100644
--- a/source/testsoftfloat.c
+++ b/source/testsoftfloat.c
@@ -886,6 +886,15 @@
 
 }
 
+static uint_fast8_t clearExceptionFlags( void )
+{
+    uint_fast8_t prevFlags;
+
+    prevFlags = slowfloat_exceptionFlags;
+    slowfloat_exceptionFlags = 0;
+    return prevFlags;
+}
+
 int main( int argc, char *argv[] )
 {
     bool haveFunctionArg;
@@ -903,7 +912,7 @@
     if ( argc <= 1 ) goto writeHelpMessage;
     genCases_setLevel( 1 );
     verCases_maxErrorCount = 20;
-    testLoops_trueFlagsPtr = &slowfloat_exceptionFlags;
+    testLoops_trueFlagsFunction = clearExceptionFlags;
     testLoops_subjFlagsFunction = softfloat_clearExceptionFlags;
     haveFunctionArg = false;
     functionCode = 0;