about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--argp/argp-help.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/argp/argp-help.c b/argp/argp-help.c
index ace71b48c2..80547859b3 100644
--- a/argp/argp-help.c
+++ b/argp/argp-help.c
@@ -867,7 +867,10 @@ hol_append (struct hol *hol, struct hol *more)
 
 	  /* Fix up the short options pointers from HOL.  */
 	  for (e = entries, left = hol->num_entries; left > 0; e++, left--)
-	    e->short_options += (short_options - hol->short_options);
+	   {
+	     unsigned long offset = e->short_options - hol->short_options;
+		  e->short_options = (char *)(short_options + offset);
+		}
 
 	  /* Now add the short options from MORE, fixing up its entries
 	     too.  */