PR24827, Linker loops forever if unterminated multi-line comment in script

YY_INPUT returns 0 on end of input, not EOF.

	PR 24827
	* ldlex.l (comment): Check for 0 return from input(), not EOF.
This commit is contained in:
Alan Modra
2019-07-20 10:47:20 +09:30
parent bcbaec5c40
commit 9ab3a74416
2 changed files with 7 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2019-07-20 Alan Modra <amodra@gmail.com>
PR 24827
* ldlex.l (comment): Check for 0 return from YY_INPUT, not EOF.
2019-07-19 Alan Modra <amodra@gmail.com> 2019-07-19 Alan Modra <amodra@gmail.com>
* testsuite/ld-powerpc/tlsgd.d, * testsuite/ld-powerpc/tlsgd.d,

View File

@ -675,7 +675,7 @@ comment (void)
while (1) while (1)
{ {
c = input(); c = input();
while (c != '*' && c != EOF) while (c != '*' && c != 0)
{ {
if (c == '\n') if (c == '\n')
lineno++; lineno++;
@ -694,7 +694,7 @@ comment (void)
if (c == '\n') if (c == '\n')
lineno++; lineno++;
if (c == EOF) if (c == 0)
{ {
einfo (_("%F%P: EOF in comment\n")); einfo (_("%F%P: EOF in comment\n"));
break; break;