Launchpad has imported 15 comments from the remote bug at
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50043.

If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.

------------------------------------------------------------------------
On 2011-08-11T09:23:21+00:00 Paolo-carlini wrote:

... let's try this new Bugzilla ;)

This is an internal reminder that it would be nice to have implemented
quite soon the resolution of core/1123:

  http://www.open-std.org/JTC1/SC22/WG21/docs/cwg_defects.html#1123

For sure the library would immediately benefit, no more explicitly
noexcept destructors in a lot of places.

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/0

------------------------------------------------------------------------
On 2012-02-21T11:51:14+00:00 Mimomorin wrote:

Created attachment 26711
A testcase for N3204

Attached a testcase for N3204 ;)

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/1

------------------------------------------------------------------------
On 2012-02-21T12:05:40+00:00 Redi wrote:

We don't want front-end testcases that rely on <iostream> and need to
check what gets printed. A better test would use static_assert, but
would also test cases with both throwing and non-throwing base class and
members.

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/2

------------------------------------------------------------------------
On 2012-02-22T02:43:30+00:00 Mimomorin wrote:

Created attachment 26721
A updated testcase

OK, here is a take two!

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/3

------------------------------------------------------------------------
On 2012-03-23T01:05:26+00:00 Paolo-carlini wrote:

Jason, I'm glad to work on this (if you don't have anything better to do
;) Any tips for me? Shouldn't be so hard but I'm still a bit lost...

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/4

------------------------------------------------------------------------
On 2012-03-23T01:07:00+00:00 Paolo-carlini wrote:

Of course I meant "if you have something better to do ;)"

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/5

------------------------------------------------------------------------
On 2012-03-23T17:59:05+00:00 Paolo-carlini wrote:

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 at: https://bugs.launchpad.net/mir/+bug/1199210/comments/6

------------------------------------------------------------------------
On 2012-03-23T18:17:56+00:00 Paolo-carlini wrote:

This doesn't compile, for example:

struct B
{
  ~B();
};

B::~B() { }

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/7

------------------------------------------------------------------------
On 2012-03-23T22:48:59+00:00 Paolo-carlini wrote:

The latter issue could be addressed by something like:

Index: decl.c
===================================================================
--- decl.c      (revision 185715)
+++ decl.c      (working copy)
@@ -1136,7 +1136,10 @@ check_redeclaration_exception_specification (tree
   if ((pedantic || ! DECL_IN_SYSTEM_HEADER (old_decl))
       && ! DECL_IS_BUILTIN (old_decl)
       && flag_exceptions
-      && !comp_except_specs (new_exceptions, old_exceptions, ce_normal))
+      && !comp_except_specs (new_exceptions, old_exceptions, ce_normal)
+      && !(DECL_DESTRUCTOR_P (new_decl)
+          && cxx_dialect >= cxx0x
+          && !new_exceptions && TYPE_NOEXCEPT_P (old_type)))   
     {
       error ("declaration of %qF has a different exception specifier",
             new_decl);

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/8

------------------------------------------------------------------------
On 2012-04-02T00:13:35+00:00 Paolo-k wrote:

Author: paolo
Date: Mon Apr  2 00:13:30 2012
New Revision: 186058

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=186058
Log:
/cp
2012-04-01  Paolo Carlini  <paolo.carl...@oracle.com>

        PR c++/50043
        * class.c (deduce_noexcept_on_destructor,
        deduce_noexcept_on_destructors): New.
        (check_bases_and_members): Call the latter.
        * decl.c (grokfndecl): Call the former.
        * method.c (implicitly_declare_fn): Not static.
        * cp-tree.h (deduce_noexcept_on_destructor, implicitly_declare_fn):
        Declare

/testsuite
2012-04-01  Paolo Carlini  <paolo.carl...@oracle.com>

        PR c++/50043
        * g++.dg/cpp0x/noexcept17.C: New.
        * g++.old-deja/g++.eh/cleanup1.C: Adjust.
        * g++.dg/tree-ssa/ehcleanup-1.C: Likewise.
        * g++.dg/cpp0x/noexcept01.C: Likewise.
        * g++.dg/eh/init-temp1.C: Likewise.
        * g++.dg/eh/ctor1.C: Likwise.

Added:
    trunk/gcc/testsuite/g++.dg/cpp0x/noexcept17.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/class.c
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/decl.c
    trunk/gcc/cp/method.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/cpp0x/noexcept01.C
    trunk/gcc/testsuite/g++.dg/eh/ctor1.C
    trunk/gcc/testsuite/g++.dg/eh/init-temp1.C
    trunk/gcc/testsuite/g++.dg/tree-ssa/ehcleanup-1.C
    trunk/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/9

------------------------------------------------------------------------
On 2012-04-02T00:19:43+00:00 Paolo-carlini wrote:

Done. Library clean-ups will follow.

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/10

------------------------------------------------------------------------
On 2012-04-12T00:10:26+00:00 Paolo-carlini wrote:

*** Bug 51295 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/11

------------------------------------------------------------------------
On 2012-06-11T10:28:40+00:00 Redi wrote:

*** Bug 53613 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/12

------------------------------------------------------------------------
On 2012-06-13T03:48:34+00:00 Kirbyzhou wrote:

How about back port this patch to 4.7 branch?
It cause a lot of compile error which easily confuse programmers.


(In reply to comment #9)
> Author: paolo
> Date: Mon Apr  2 00:13:30 2012
> New Revision: 186058
> 
> URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=186058
> Log:
> /cp
> 2012-04-01  Paolo Carlini  <paolo.carl...@oracle.com>
> 
>     PR c++/50043
>     * class.c (deduce_noexcept_on_destructor,
>     deduce_noexcept_on_destructors): New.
>     (check_bases_and_members): Call the latter.
>     * decl.c (grokfndecl): Call the former.
>     * method.c (implicitly_declare_fn): Not static.
>     * cp-tree.h (deduce_noexcept_on_destructor, implicitly_declare_fn):
>     Declare
> 
> /testsuite
> 2012-04-01  Paolo Carlini  <paolo.carl...@oracle.com>
> 
>     PR c++/50043
>     * g++.dg/cpp0x/noexcept17.C: New.
>     * g++.old-deja/g++.eh/cleanup1.C: Adjust.
>     * g++.dg/tree-ssa/ehcleanup-1.C: Likewise.
>     * g++.dg/cpp0x/noexcept01.C: Likewise.
>     * g++.dg/eh/init-temp1.C: Likewise.
>     * g++.dg/eh/ctor1.C: Likwise.
> 
> Added:
>     trunk/gcc/testsuite/g++.dg/cpp0x/noexcept17.C
> Modified:
>     trunk/gcc/cp/ChangeLog
>     trunk/gcc/cp/class.c
>     trunk/gcc/cp/cp-tree.h
>     trunk/gcc/cp/decl.c
>     trunk/gcc/cp/method.c
>     trunk/gcc/testsuite/ChangeLog
>     trunk/gcc/testsuite/g++.dg/cpp0x/noexcept01.C
>     trunk/gcc/testsuite/g++.dg/eh/ctor1.C
>     trunk/gcc/testsuite/g++.dg/eh/init-temp1.C
>     trunk/gcc/testsuite/g++.dg/tree-ssa/ehcleanup-1.C
>     trunk/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/13

------------------------------------------------------------------------
On 2012-06-15T02:14:48+00:00 Kirbyzhou wrote:

I have tested to apply this patch to 4.7 branch, everythings goes well.
Since it breaks already existing code, anybody can do commit backport to 4.7 
branch?

(In reply to comment #13)
> How about back port this patch to 4.7 branch?
> It cause a lot of compile error which easily confuse programmers.
> (In reply to comment #9)
> > Author: paolo
> > Date: Mon Apr  2 00:13:30 2012
> > New Revision: 186058
> > 
> > URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=186058
> > Log:
> > /cp
> > 2012-04-01  Paolo Carlini  <paolo.carl...@oracle.com>
> > 
> >     PR c++/50043
> >     * class.c (deduce_noexcept_on_destructor,
> >     deduce_noexcept_on_destructors): New.
> >     (check_bases_and_members): Call the latter.
> >     * decl.c (grokfndecl): Call the former.
> >     * method.c (implicitly_declare_fn): Not static.
> >     * cp-tree.h (deduce_noexcept_on_destructor, implicitly_declare_fn):
> >     Declare
> > 
> > /testsuite
> > 2012-04-01  Paolo Carlini  <paolo.carl...@oracle.com>
> > 
> >     PR c++/50043
> >     * g++.dg/cpp0x/noexcept17.C: New.
> >     * g++.old-deja/g++.eh/cleanup1.C: Adjust.
> >     * g++.dg/tree-ssa/ehcleanup-1.C: Likewise.
> >     * g++.dg/cpp0x/noexcept01.C: Likewise.
> >     * g++.dg/eh/init-temp1.C: Likewise.
> >     * g++.dg/eh/ctor1.C: Likwise.
> > 
> > Added:
> >     trunk/gcc/testsuite/g++.dg/cpp0x/noexcept17.C
> > Modified:
> >     trunk/gcc/cp/ChangeLog
> >     trunk/gcc/cp/class.c
> >     trunk/gcc/cp/cp-tree.h
> >     trunk/gcc/cp/decl.c
> >     trunk/gcc/cp/method.c
> >     trunk/gcc/testsuite/ChangeLog
> >     trunk/gcc/testsuite/g++.dg/cpp0x/noexcept01.C
> >     trunk/gcc/testsuite/g++.dg/eh/ctor1.C
> >     trunk/gcc/testsuite/g++.dg/eh/init-temp1.C
> >     trunk/gcc/testsuite/g++.dg/tree-ssa/ehcleanup-1.C
> >     trunk/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C

Reply at: https://bugs.launchpad.net/mir/+bug/1199210/comments/14


** Changed in: gcc
       Status: Unknown => Fix Released

** Changed in: gcc
   Importance: Unknown => Medium

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1199210

Title:
  lp:mir FTBFS: surface_info.h:52:13: error: looser throw specifier for
  ‘virtual mir::input::SurfaceInfoController::~SurfaceInfoController()’

To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc/+bug/1199210/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to