]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Suppress statement not reached warnings under Solaris Studio
authorMichael Meffie <mmeffie@sinenomine.net>
Sun, 21 Jan 2018 23:38:11 +0000 (18:38 -0500)
committerBenjamin Kaduk <kaduk@mit.edu>
Thu, 7 Jun 2018 22:44:38 +0000 (18:44 -0400)
Solaris Studio issues warnings for statements which can not be reached,
such as statements following an infinite loop.  For example, the return
statement will generate a 'statement not reached' warning in the
following code:

    while (1) {
       /*  no breaks or gotos in this body */
    }
    return 0;

Suppress these warnings by conditionally removing such statements when
building under Solaris Studio.

Reviewed-on: https://gerrit.openafs.org/12958
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit f47cb2d4a957910c3e7d4b755f41ddef5dd103c5)

Change-Id: I3ac84edbc18d7b6aebd568e9a1c4a3e47aba5512
Reviewed-on: https://gerrit.openafs.org/13107
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
19 files changed:
src/bozo/bnode.c
src/bozo/bosserver.c
src/bucoord/bc_status.c
src/butc/dbentries.c
src/config/stds.h
src/fsprobe/fsprobe.c
src/kauth/krb_udp.c
src/lwp/iomgr.c
src/opr/softsig.c
src/rx/rx_lwp.c
src/rx/rx_pthread.c
src/ubik/beacon.c
src/ubik/recovery.c
src/util/tabular_output.c
src/viced/viced.c
src/vol/fssync-server.c
src/vol/salvaged.c
src/vol/salvsync-server.c
src/volser/volmain.c

index d117311bd6e83fffad3f163ddbd501ea14a4951d..6c0ab900483005eb344691ceed5bf4c565467858 100644 (file)
@@ -681,7 +681,7 @@ bproc(void *unused)
            }
        }
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 static afs_int32
index f97745cf8028ceff95d7b7525b2c5e4ecbace834..fb586f7f9703022fb5b27463abe05887091d9f0e 100644 (file)
@@ -633,7 +633,7 @@ BozoDaemon(void *unused)
            bnode_ApplyInstance(bdrestart, 0);
        }
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 #ifdef AFS_AIX32_ENV
index 818cc5821a080473225237ebb957836ba6d55f2e..2ba8728963d763ee72b8ab588f8d3d2046a05dfa 100644 (file)
@@ -388,7 +388,7 @@ statusWatcher(void *unused)
            curPollPtr = 0;
        }                       /*done */
     }                          /*w */
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /* bc_jobNumber
index 3a358cef40705b31d050f3d641e6d9b1d54ab91c..37b35d3076bb073bbc04dee6e31a8f7c7a3bd2f8 100644 (file)
@@ -483,5 +483,5 @@ dbWatcher(void *unused)
        IOMGR_Sleep(2);
 #endif
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
index a031bfdd234927b4ca46eb0f6d14b9579f6ed301..018562363c98f0a52d7aa5d13dcc2627f05e46ba 100644 (file)
@@ -316,4 +316,13 @@ hdr_static_inline(unsigned long long) afs_printable_uint64_lu(afs_uint64 d) { re
 #define AFS_NONNULL(x)
 #endif
 
+/*
+ * Conditionally remove unreached statements under Solaris Studio.
+ */
+#if defined(__SUNPRO_C)
+# define AFS_UNREACHED(x)
+#else
+# define AFS_UNREACHED(x)  x
+#endif
+
 #endif /* OPENAFS_CONFIG_AFS_STDS_H */
index 1ca1b5ad76bdc9cab6f1e86b72c24d66166bb393..03657eb1a71741d7793a83814f2ee2c8e5ba1985 100644 (file)
@@ -367,9 +367,8 @@ fsprobe_LWP(void *unused)
        if (code)
            fprintf(stderr, "[%s] IOMGR_Select returned code %d\n", rn, code);
     }                          /*Service loop */
-    free(stats64.ViceStatistics64_val);
-
-    return NULL;
+    AFS_UNREACHED(free(stats64.ViceStatistics64_val));
+    AFS_UNREACHED(return(NULL));
 }                              /*fsprobe_LWP */
 
 /*list all the partitions on <aserver> */
index f4b84775d37fbf5bce47718ee92d811d86d3d34e..a5960f35f454e1dd8e3bc56fa4e7f97c2ce34bf5 100644 (file)
@@ -113,7 +113,7 @@ FiveMinuteCheckLWP(void *unused)
        /* close the log so it can be removed */
        ReOpenLog();    /* no trunc, just append */
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 
index dcd94d15815bec5573f4298b68d80f20f65d0202..821ae0c1ecf5ccda807046329e0d30ef3d9a16a4 100644 (file)
@@ -583,7 +583,7 @@ static void *IOMGR(void *dummy)
        }
        LWP_DispatchProcess();
     }
-    return (void *)-1; /* keeps compilers happy. */
+    AFS_UNREACHED(return((void *)-1)); /* keeps compilers happy. */
 }
 
 /************************\
index 469bd43e1ca8be19ef842d4f54e6a588300c9aab..fa4fcad4d200efffc14b9c70bdcc21956648e537 100644 (file)
@@ -76,7 +76,7 @@ signalHandler(void *arg)
            handlers[receivedSignal].handler(receivedSignal);
        }
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 static void
index fa4ee6dc48080aa80d5229b818eab3b7640bb3ce..a64f3be44da78ca83c7dc7c27639c6ca7ff8ce63 100644 (file)
@@ -334,8 +334,7 @@ rx_ListenerProc(void *dummy)
        rxi_ServerProc(threadID, newcall, &sock);
        /* osi_Assert(sock != OSI_NULLSOCKET); */
     }
-    /* not reached */
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /* This is the server process request loop. The server process loop
@@ -368,8 +367,7 @@ rx_ServerProc(void * unused)
        /* osi_Assert(threadID != -1); */
        /* osi_Assert(newcall != NULL); */
     }
-    /* not reached */
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /*
index b4272bbce6f0c78125173b8feab431372d3c0cb6..ba824b7b47b1d3c21d57077f5ed8c2a6dfcff7c5 100644 (file)
@@ -182,7 +182,7 @@ event_handler(void *argp)
 #endif
        rx_pthread_event_rescheduled = 0;
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 
@@ -264,8 +264,7 @@ rx_ListenerProc(void *argp)
        rxi_ServerProc(threadID, newcall, &sock);
        /* osi_Assert(sock != OSI_NULLSOCKET); */
     }
-    /* not reached */
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /* This is the server process request loop. The server process loop
@@ -312,8 +311,7 @@ rx_ServerProc(void * dummy)
        /* osi_Assert(threadID != -1); */
        /* osi_Assert(newcall != NULL); */
     }
-    /* not reached */
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /*
index 01844ae7de1c21186c5a695668338c7e982d2bd3..4351cc8b8a00bd60874f3375d18be687fc5a0932 100644 (file)
@@ -663,7 +663,7 @@ ubeacon_Interact(void *dummy)
        }
 
     }                          /* while loop */
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /*!
index 0f3e714a7060c5588c8a5e053b75999ffd39108c..5bd03e13cc82c0c0b308a76ea368e6523aadcf88 100644 (file)
@@ -874,7 +874,7 @@ urecovery_Interact(void *dummy)
        }
        DBRELE(ubik_dbase);
     }
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 /*!
index 7c883a81b83547239e8887ab169b0feda1b60100..dd45fd2ff8f7e1c87591991640b89f50e18f0244 100644 (file)
@@ -509,5 +509,5 @@ findRowIndex(struct util_Table* Table, struct util_TableRow *aRow){
                 return lower;
         }
     }  while(1);
-    return 0;
+    AFS_UNREACHED(return(0));
 }
index 11f21e0e7ef2e3fd79713eecab7c9c68fe6c6d58..1ca05a603252e8b4ca2872cbf9b83d30e14d7037 100644 (file)
@@ -440,8 +440,10 @@ FiveMinuteCheckLWP(void *unused)
     opr_cv_broadcast(&fs_state.worker_done_cv);
     FS_UNLOCK;
     FS_STATE_UNLOCK;
-#endif
     return NULL;
+#else
+    AFS_UNREACHED(return(NULL));
+#endif
 }                              /*FiveMinuteCheckLWP */
 
 
@@ -488,8 +490,10 @@ HostCheckLWP(void *unused)
     opr_cv_broadcast(&fs_state.worker_done_cv);
     FS_UNLOCK;
     FS_STATE_UNLOCK;
-#endif
     return NULL;
+#else
+    AFS_UNREACHED(return(NULL));
+#endif
 }                              /*HostCheckLWP */
 
 /* This LWP does fsync checks every 5 minutes:  it should not be used for
@@ -547,8 +551,10 @@ FsyncCheckLWP(void *unused)
     opr_cv_broadcast(&fs_state.worker_done_cv);
     FS_UNLOCK;
     FS_STATE_UNLOCK;
-#endif /* AFS_DEMAND_ATTACH_FS */
     return NULL;
+#else
+    AFS_UNREACHED(return(NULL));
+#endif /* !AFS_DEMAND_ATTACH_FS */
 }
 
 /*------------------------------------------------------------------------
@@ -2213,5 +2219,5 @@ main(int argc, char *argv[])
     while (1) {
        sleep(1000);            /* long time */
     }
-    return 0;
+    AFS_UNREACHED(return(0));
 }
index cd15e2d7c3d7eee287a7f802b2d20363edf0b289..2d7cd6011349eb18c8b847e609c6a2681189f6b1 100644 (file)
@@ -331,7 +331,7 @@ FSYNC_sync(void * args)
            CallHandler(&FSYNC_readfds);
 #endif
     }
-    return NULL; /* hush now, little gcc */
+    AFS_UNREACHED(return(NULL)); /* hush now, little gcc */
 }
 
 #ifdef AFS_DEMAND_ATTACH_FS
@@ -376,9 +376,8 @@ FSYNC_salvageThread(void * args)
        VCancelReservation_r(vp);
     }
 
-    VOL_UNLOCK;
-
-    return NULL;
+    AFS_UNREACHED(VOL_UNLOCK);
+    AFS_UNREACHED(return(NULL));
 }
 
 /**
@@ -2128,7 +2127,7 @@ FindHandler(osi_socket afd)
        }
     ReleaseReadLock(&FSYNC_handler_lock);      /* just in case */
     opr_abort();
-    return -1;                 /* satisfy compiler */
+    AFS_UNREACHED(return(-1));                 /* satisfy compiler */
 }
 
 static int
@@ -2140,7 +2139,7 @@ FindHandler_r(osi_socket afd)
            return i;
        }
     opr_abort();
-    return -1;                 /* satisfy compiler */
+    AFS_UNREACHED(return(-1));                 /* satisfy compiler */
 }
 
 static int
index 23239d731be98247d61feed21f99b96cb8aa7082..b2468316a694a3df80f302fc808d33247bd78570 100644 (file)
@@ -708,7 +708,7 @@ SalvageChildReaperThread(void * args)
        opr_cv_broadcast(&worker_cv);
     }
 
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 static int
@@ -757,8 +757,8 @@ SalvageLogCleanupThread(void * arg)
        }
     }
 
-    opr_mutex_exit(&worker_lock);
-    return NULL;
+    AFS_UNREACHED(opr_mutex_exit(&worker_lock));
+    AFS_UNREACHED(return(NULL));
 }
 
 #define LOG_XFER_BUF_SIZE 65536
index b399d8164940f00f472315bcc1278f52bc0b54d9..d974152d778e017cb4844a965daf31916f9fb747 100644 (file)
@@ -336,7 +336,7 @@ SALVSYNC_syncThread(void * args)
            CallHandler(&SALVSYNC_readfds);
     }
 
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 static void
index f454dd10dd27e68238858c57bffb2f0f593faa48..de3c9860b6188c4147ae03aeba15c34849470244 100644 (file)
@@ -156,7 +156,7 @@ BKGLoop(void *unused)
        }
     }
 
-    return NULL;
+    AFS_UNREACHED(return(NULL));
 }
 
 #if defined(AFS_NT40_ENV) || defined(AFS_DARWIN160_ENV)