cpphash.c (special_symbol): When expanding __LINE__, use the top file buffer, not the top buffer.

1999-04-09 22:58 -0400  Zack Weinberg  <zack@rabi.columbia.edu>
	* cpphash.c (special_symbol): When expanding __LINE__, use the
	top file buffer, not the top buffer.

From-SVN: r26319
This commit is contained in:
Zack Weinberg 1999-04-09 20:02:39 +00:00 committed by Zack Weinberg
parent 2622b94785
commit 5e4df1ae8b
3 changed files with 24 additions and 1 deletions

View File

@ -1,3 +1,8 @@
1999-04-09 22:58 -0400 Zack Weinberg <zack@rabi.columbia.edu>
* cpphash.c (special_symbol): When expanding __LINE__, use the
top file buffer, not the top buffer.
Fri Apr 9 13:41:04 1999 Jim Wilson <wilson@cygnus.com>
* Makefile.in (check-g++, check-gcc, check-g77, check-objc): Add

View File

@ -991,7 +991,7 @@ special_symbol (hp, pfile)
case T_SPECLINE:
{
long line;
cpp_buf_line_and_col (CPP_BUFFER (pfile), &line, NULL);
cpp_buf_line_and_col (cpp_file_buffer (pfile), &line, NULL);
CPP_RESERVE (pfile, 10);
sprintf (CPP_PWRITTEN (pfile), "%ld", line);

View File

@ -0,0 +1,18 @@
/* Test that __LINE__ works when embedded in a macro. */
/* { dg-do run } */
#define foo() bar(__LINE__)
void
bar(int x)
{
if (x != 16)
abort();
}
int
main(void)
{
foo(); /* This is line 16 */
return 0;
}