aboutsummaryrefslogtreecommitdiff
path: root/libcpp/internal.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2016-04-06 11:35:16 -0700
committerRichard Henderson <rth@gcc.gnu.org>2016-04-06 11:35:16 -0700
commit64824205cc9312e4e7798cda86a8e4c1f23e5d2b (patch)
tree7c2cad1cf8de66534953f4d3d802c6e548f0b45a /libcpp/internal.h
parentbc2fc1f3b84472865724b7e91b540ca0fadedd1b (diff)
downloadgcc-64824205cc9312e4e7798cda86a8e4c1f23e5d2b.zip
gcc-64824205cc9312e4e7798cda86a8e4c1f23e5d2b.tar.gz
gcc-64824205cc9312e4e7798cda86a8e4c1f23e5d2b.tar.bz2
re PR preprocessor/61817 (Inconsistent location of tokens in the expansion list of a built-in macro)
PR preprocessor/61817 PR preprocessor/69391 * internal.h (_cpp_builtin_macro_text): Update decl. * macro.c (_cpp_builtin_macro_text): Accept location for __LINE__. (builtin_macro): Accept a second location for __LINE__. (enter_macro_context): Compute both virtual and real expansion locations for the macro. * gcc.dg/pr61817-1.c: New test. * gcc.dg/pr61817-2.c: New test. * gcc.dg/pr69391-1.c: New test. * gcc.dg/pr69391-2.c: New test. From-SVN: r234794
Diffstat (limited to 'libcpp/internal.h')
-rw-r--r--libcpp/internal.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/libcpp/internal.h b/libcpp/internal.h
index bafd480..9ce8707 100644
--- a/libcpp/internal.h
+++ b/libcpp/internal.h
@@ -626,7 +626,8 @@ extern bool _cpp_save_parameter (cpp_reader *, cpp_macro *, cpp_hashnode *,
extern bool _cpp_arguments_ok (cpp_reader *, cpp_macro *, const cpp_hashnode *,
unsigned int);
extern const unsigned char *_cpp_builtin_macro_text (cpp_reader *,
- cpp_hashnode *);
+ cpp_hashnode *,
+ source_location = 0);
extern int _cpp_warn_if_unused_macro (cpp_reader *, cpp_hashnode *, void *);
extern void _cpp_push_token_context (cpp_reader *, cpp_hashnode *,
const cpp_token *, unsigned int);