Nobody could think of a reason why value-dependency of the operand of a noexcept-expression should make the noexcept itself value-dependent, so it's dropped.

Tested x86_64-pc-linux-gnu, applying to trunk.
commit dc2157101b5083c82984936144097fb484bdbad4
Author: Jason Merrill <ja...@redhat.com>
Date:   Wed Nov 10 17:57:43 2010 -0600

        * pt.c (value_dependent_expression_p) [NOEXCEPT_EXPR]: Don't
        check value_dependent_expression_p on the operand.

diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 95b82ee..c8c1010 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -18143,9 +18143,7 @@ value_dependent_expression_p (tree expression)
 
     case NOEXCEPT_EXPR:
       expression = TREE_OPERAND (expression, 0);
-      /* FIXME why check value-dependency?  */
-      return (type_dependent_expression_p (expression)
-             || value_dependent_expression_p (expression));
+      return type_dependent_expression_p (expression);
 
     case SCOPE_REF:
       {

Reply via email to