* config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:

call demand_empty_rest_of_line.  Non BFD_ASSEMBLER version:
	correct handling of input line pointer, and call
	demand_empty_rest_of_line.
PR 9525.
This commit is contained in:
Ian Lance Taylor
1996-04-24 15:30:56 +00:00
parent 894d8e6946
commit 116bf30f41
2 changed files with 21 additions and 20 deletions

View File

@ -1,3 +1,10 @@
Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
* config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
correct handling of input line pointer, and call
demand_empty_rest_of_line.
Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com> Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
* config/tc-sparc.c (in_bitfield_range): New static function. * config/tc-sparc.c (in_bitfield_range): New static function.

View File

@ -1239,6 +1239,8 @@ obj_coff_section (ignore)
bfd_section_name (stdoutput, sec), bfd_section_name (stdoutput, sec),
bfd_errmsg (bfd_get_error ())); bfd_errmsg (bfd_get_error ()));
} }
demand_empty_rest_of_line ();
} }
void void
@ -3285,11 +3287,8 @@ obj_coff_section (ignore)
int ignore; int ignore;
{ {
/* Strip out the section name */ /* Strip out the section name */
char *section_name; char *section_name, *name;
char *section_name_end;
char c; char c;
int argp;
unsigned int len;
unsigned int exp; unsigned int exp;
long flags; long flags;
@ -3310,26 +3309,21 @@ obj_coff_section (ignore)
section_name = input_line_pointer; section_name = input_line_pointer;
c = get_symbol_end (); c = get_symbol_end ();
section_name_end = input_line_pointer;
len = section_name_end - section_name; name = xmalloc (input_line_pointer - section_name + 1);
input_line_pointer++; strcpy (name, section_name);
SKIP_WHITESPACE ();
argp = 0; *input_line_pointer = c;
if (c == ',')
argp = 1;
else if (*input_line_pointer == ',')
{
argp = 1;
++input_line_pointer;
SKIP_WHITESPACE ();
}
exp = 0; exp = 0;
flags = 0; flags = 0;
if (argp)
SKIP_WHITESPACE ();
if (*input_line_pointer == ',')
{ {
++input_line_pointer;
SKIP_WHITESPACE ();
if (*input_line_pointer != '"') if (*input_line_pointer != '"')
exp = get_absolute_expression (); exp = get_absolute_expression ();
else else
@ -3360,11 +3354,11 @@ obj_coff_section (ignore)
} }
} }
subseg_new (section_name, (subsegT) exp); subseg_new (name, (subsegT) exp);
segment_info[now_seg].scnhdr.s_flags |= flags; segment_info[now_seg].scnhdr.s_flags |= flags;
*section_name_end = c; demand_empty_rest_of_line ();
} }