summaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2012-07-03 03:30:09 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2012-07-03 03:30:09 +0000
commit93d504b266765a498f24359432984b70aa36bde1 (patch)
tree97abf62f4571e48455d2b7dc15434fc31b0980fb /gcc/cp
parent579349b1bdcc5ed58cc115200bc207d929fa2d0c (diff)
downloadgcc-93d504b266765a498f24359432984b70aa36bde1.tar.gz
PR c++/53788
* pt.c (build_non_dependent_expr): Don't wrap a dummy object. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189188 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog3
-rw-r--r--gcc/cp/pt.c4
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index f00ff70f8f1..e09166b59cf 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,8 @@
2012-07-02 Jason Merrill <jason@redhat.com>
+ PR c++/53788
+ * pt.c (build_non_dependent_expr): Don't wrap a dummy object.
+
PR c++/53816
* class.c (resolves_to_fixed_type_p): Check uses_template_parms
(current_function_decl) instead of processing_template_decl.
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index f8f416a3b9e..563a1ad294f 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -20215,6 +20215,10 @@ build_non_dependent_expr (tree expr)
if (BRACE_ENCLOSED_INITIALIZER_P (expr))
return expr;
+ /* Don't wrap a dummy object, we need to be able to test for it. */
+ if (is_dummy_object (expr))
+ return expr;
+
if (TREE_CODE (expr) == COND_EXPR)
return build3 (COND_EXPR,
TREE_TYPE (expr),