aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcpp')
-rw-r--r--libcpp/ChangeLog5
-rw-r--r--libcpp/macro.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 4b66c841..c4f7c5a 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-30 Dodji Seketeli <dodji@redhat.com>
+
+ Fix cpp_sys_macro_p with -ftrack-macro-expansion
+ * macro.c (cpp_sys_macro_p): Support -ftrack-macro-expansion.
+
2012-04-29 Dodji Seketeli <dodji@redhat.com>
* lex.c (lex_raw_string): Change C++ style comments into C style
diff --git a/libcpp/macro.c b/libcpp/macro.c
index 54de3e3..4f8e52f 100644
--- a/libcpp/macro.c
+++ b/libcpp/macro.c
@@ -2436,7 +2436,12 @@ cpp_get_token_with_location (cpp_reader *pfile, source_location *loc)
int
cpp_sys_macro_p (cpp_reader *pfile)
{
- cpp_hashnode *node = pfile->context->c.macro;
+ cpp_hashnode *node = NULL;
+
+ if (pfile->context->tokens_kind == TOKENS_KIND_EXTENDED)
+ node = pfile->context->c.mc->macro_node;
+ else
+ node = pfile->context->c.macro;
return node && node->value.macro && node->value.macro->syshdr;
}