http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50043

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-03-23
     Ever Confirmed|0                           |1

--- Comment #6 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-03-23 
17:59:05 UTC ---
I'm making some progress understanding these parts of the front-end.

For example the following trivial patchlet passes the testcase ;) But,
seriously, I'm not sure whether we really need a full fledged
build_exception_variant, whether we have to do something about LAZY_* things,
and much, much, more.


Index: class.c
===================================================================
--- class.c     (revision 185722)
+++ class.c     (working copy)
@@ -1001,6 +1001,10 @@ add_method (tree type, tree method, tree using_dec
                   "destructor",
                   type);
        }
+      else if (cxx_dialect >= cxx0x
+              && !TYPE_RAISES_EXCEPTIONS (TREE_TYPE (method)))
+       TREE_TYPE (method) = build_exception_variant (TREE_TYPE (method),
+                                                     noexcept_true_spec);
     }
   else
     {

Reply via email to