#endif
 
 #define DESC                                                          \
+  "Options [Must always be first]\n"                                  \
+  "\t-h, this message, -n dryrun\n"                                   \
+  "In-file expansions\n"                                              \
   "\t$@  returns target-file\n"                                       \
   "\t$*  returns target-file without suffix\n"                        \
   "\t$+  returns arguments\n"
 
   if (argc < 2
   ||  !strcmp(argv[1], "-h"))
-  { fprintf(stderr, "%s: %s", argv[0], HELP DESC); return 1; }
+  { goto help; }
 
   g_filename = argv[1];
 
     if (argc > 2)
     { ret = 1; g_filename = argv[2]; }
     else
-    { return 1; }
+    { goto help; }
   }
 
   buf = find_region(g_filename);
 
   free(buf);
   return ret;
+help:
+  fprintf(stderr, "%s: %s", argv[0], HELP DESC);
+  return 1;
 }