Fix for bug #132 (warnings for non-exclusive options).
authorShamus Hammons <jlhamm@acm.org>
Fri, 28 Feb 2020 23:57:27 +0000 (17:57 -0600)
committerShamus Hammons <jlhamm@acm.org>
Fri, 28 Feb 2020 23:57:27 +0000 (17:57 -0600)
Thanks to LinkoVitch for the report; now at v1.6.4.

rln.c
rln.h

diff --git a/rln.c b/rln.c
index 37e5197921c8be3bfd2669f65ffee66c72c4b285..a0b5ab02aa040e7e4c071822b100bba2956addba 100644 (file)
--- a/rln.c
+++ b/rln.c
@@ -2851,6 +2851,10 @@ int doargs(int argc, char * argv[])
                        case 'e':
                        case 'E':                                       // Output COFF (absolute only)
                                cflag = 1;
+
+                               if (noheaderflag)
+                                       printf("Warning: -e overridden by -n, output will be headerless\n");
+
                                break;
                        case 'g':
                        case 'G':                                       // Output source level debugging
@@ -2909,6 +2913,9 @@ int doargs(int argc, char * argv[])
                                if (noheaderflag)
                                        warn('n', 1);
 
+                               if (cflag)
+                                       printf("Warning: -e overridden by -n, output will be headerless\n");
+
                                noheaderflag = 1;
                                break;
                        case 'o':
@@ -3060,7 +3067,7 @@ void ShowHelp(void)
        printf("\n");
        printf("Options:\n");
        printf("   -? or -h                display usage information\n");
-       printf("   -a <text> <data> <bss>  output absolute file\n");
+       printf("   -a <text> <data> <bss>  output absolute file (default: ABS)\n");
        printf("                           hex value: segment address\n");
        printf("                           r: relocatable segment\n");
        printf("                           x: contiguous segment\n");
@@ -3073,7 +3080,7 @@ void ShowHelp(void)
        printf("   -ii <fname> <label>     incbin <fname> and set <label> (no truncation)\n");
        printf("   -l                      add local symbols\n");
        printf("   -m                      produce load symbols map\n");
-       printf("   -n                      output no file header to absolute file\n");
+       printf("   -n                      output no file header to absolute file (overrides -e)\n");
        printf("   -o <fname>              set output name\n");
        printf("   -r<size>                section alignment size\n");
        printf("                           w: word (2 bytes)\n");
diff --git a/rln.h b/rln.h
index 6e2b0925d1164bbea5ff04a9643fcca155fbd613..75d6bb3f033c93fcf93da3801a22f1a2aac53176 100644 (file)
--- a/rln.h
+++ b/rln.h
@@ -44,7 +44,7 @@
 
 #define MAJOR   1                      // Major version number
 #define MINOR   6                      // Minor version number
-#define PATCH   3                      // Patch release number
+#define PATCH   4                      // Patch release number
 
 #ifdef WIN32
 #define PLATFORM     "Win32"           // Release platform - Windows