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.
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 ======= ======= ======= ======= ======= ======= ======= ======= ====
"destructo r",
type) ; EXCEPTIONS (TREE_TYPE (method))) _variant (TREE_TYPE (method), true_spec) ;
=======
--- class.c (revision 185722)
+++ class.c (working copy)
@@ -1001,6 +1001,10 @@ add_method (tree type, tree method, tree using_dec
}
+ else if (cxx_dialect >= cxx0x
+ && !TYPE_RAISES_
+ TREE_TYPE (method) = build_exception
+ noexcept_
}
else
{