aboutsummaryrefslogtreecommitdiff
path: root/libcpp/expr.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2010-09-01 00:47:25 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2010-09-01 00:47:25 +0200
commita69d2520e0ed978f8c030689958e5f67e7ca42eb (patch)
treef637ade47d19715a8cf418b551c01d28ece8d143 /libcpp/expr.c
parent0c1bebc414bf795957a4371d614618344589310e (diff)
downloadgcc-a69d2520e0ed978f8c030689958e5f67e7ca42eb.zip
gcc-a69d2520e0ed978f8c030689958e5f67e7ca42eb.tar.gz
gcc-a69d2520e0ed978f8c030689958e5f67e7ca42eb.tar.bz2
re PR preprocessor/45457 (ICE: invalid built-in macro "__DBL_DENORM_MIN__")
PR preprocessor/45457 * expr.c (parse_defined): Call pfile->cb.user_builtin_macro hook if needed. * directives.c (do_ifdef, do_ifndef): Likewise. * c-c++-common/cpp/pr45457.c: New test. From-SVN: r163705
Diffstat (limited to 'libcpp/expr.c')
-rw-r--r--libcpp/expr.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libcpp/expr.c b/libcpp/expr.c
index 4dbc989..d2f6c3c 100644
--- a/libcpp/expr.c
+++ b/libcpp/expr.c
@@ -700,6 +700,9 @@ parse_defined (cpp_reader *pfile)
node->flags |= NODE_USED;
if (node->type == NT_MACRO)
{
+ if ((node->flags & NODE_BUILTIN)
+ && pfile->cb.user_builtin_macro)
+ pfile->cb.user_builtin_macro (pfile, node);
if (pfile->cb.used_define)
pfile->cb.used_define (pfile, pfile->directive_line, node);
}