diff --git a/tools/sepolicy-analyze/sepolicy-analyze.c b/tools/sepolicy-analyze/sepolicy-analyze.c
index 64533d884be4b4768381512668f495f223f93374..8c0c423f9874a61bef19e5ca6fd62f6682c24824 100644
--- a/tools/sepolicy-analyze/sepolicy-analyze.c
+++ b/tools/sepolicy-analyze/sepolicy-analyze.c
@@ -25,9 +25,11 @@ static struct {
 
 void usage(char *arg0)
 {
+    int i;
+
     fprintf(stderr, "%s must be called on a policy file with a component and the appropriate arguments specified\n", arg0);
     fprintf(stderr, "%s <policy-file>:\n", arg0);
-    for(int i = 0; i < NUM_COMPONENTS; i++) {
+    for(i = 0; i < NUM_COMPONENTS; i++) {
         analyze_components[i].usage();
     }
     exit(1);
@@ -39,12 +41,14 @@ int main(int argc, char **argv)
     struct policy_file pf;
     policydb_t policydb;
     int rc;
+    int i;
+
     if (argc < 3)
         usage(argv[0]);
     policy = argv[1];
     if(load_policy(policy, &policydb, &pf))
         exit(1);
-    for(int i = 0; i < NUM_COMPONENTS; i++) {
+    for(i = 0; i < NUM_COMPONENTS; i++) {
         if (!strcmp(analyze_components[i].key, argv[2])) {
             rc = analyze_components[i].func(argc - 2, argv + 2, &policydb);
             if (rc && USAGE_ERROR) {
@@ -53,4 +57,5 @@ int main(int argc, char **argv)
         }
     }
     usage(argv[0]);
+    exit(0);
 }