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
+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
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);
--- /dev/null
+/* 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;
+}