Bug 31377

Summary: wrap_help error
Product: gcc Reporter: George Ellery <george>
Component: middle-endAssignee: Not yet assigned to anyone <unassigned>
Status: UNCONFIRMED ---    
Severity: minor CC: gcc-bugs
Priority: P3 Keywords: diagnostic
Version: 4.1.2   
Target Milestone: ---   
Host: Target:
Build: Known to work:
Known to fail: Last reconfirmed:

Description George Ellery 2007-03-27 18:43:47 UTC
in the file "opts.c", in the function "wrap_help", the var 'room' is calculated as the space remaining between the the left item field width and the rightmost column (which defaults to 80 chars). it is then compared to the columns value:

      room = columns - 3 - MAX (col_width, item_width);
      if (room > columns)
    	room = 0;
      len = remaining;

I assume this is supposed to determine if the left field is taking up more than the entire width of the line and if so, sets it to 0 as there is no room left. 
to do this, the correct code should be

      room = columns - 3 - MAX (col_width, item_width);
      if (room < 0)
    	room = 0;
      len = remaining;

admitedly, since all the help lines that print out don't have a left field that comes close to taking up the entire line, this case never occurs, so this is a trival case.