[Bug c++/28438] Anon namespace pointers in exported classes

2006-07-19 Thread jason at redhat dot com


--- Comment #2 from jason at redhat dot com  2006-07-19 20:02 ---
Subject: Re:   New: Anon namespace pointers in exported classes

Yes, this is an ODR violation.  However, the patch I'm working on will 
allow it to compile (as a side effect of other desired changes).

Jason


-- 


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

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



[Bug target/29825] [4.1 regression] ICE in extract_insn, at recog.c:2084

2006-11-14 Thread jason at redhat dot com


--- Comment #19 from jason at redhat dot com  2006-11-15 02:07 ---
Subject: Re:  [4.1 regression] ICE in extract_insn, at recog.c:2084

OK, now I've really reverted the patch.  Silly svn resolved...

Jason


-- 


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

--- You are receiving this mail because: ---
You reported the bug, or are watching the reporter.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



[Bug c++/12765] [3.3.2 regression] 2GB mem not enough for sucessful compile

2003-10-27 Thread jason at redhat dot com
PLEASE REPLY TO [EMAIL PROTECTED] ONLY, *NOT* [EMAIL PROTECTED]

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


jason at redhat dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||DUPLICATE


--- Additional Comments From jason at redhat dot com  2003-10-27 19:05 
---


*** This bug has been marked as a duplicate of 12726 ***



--- You are receiving this mail because: ---
You reported the bug, or are watching the reporter.




[Bug c++/12726] [3.3.2/3.4 regression] ICE (segfault) on trivial code

2003-10-27 Thread jason at redhat dot com
PLEASE REPLY TO [EMAIL PROTECTED] ONLY, *NOT* [EMAIL PROTECTED]

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


jason at redhat dot com changed:

   What|Removed |Added

 CC||debian-gcc at lists dot
   ||debian dot org


--- Additional Comments From jason at redhat dot com  2003-10-27 19:05 
---
*** Bug 12765 has been marked as a duplicate of this bug. ***



--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.




[Bug c++/13944] [3.3/3.4/3.5 Regression] exception in constructor of a class to be thrown is not caught

2004-02-16 Thread jason at redhat dot com

--- Additional Comments From jason at redhat dot com  2004-02-16 18:22 
---
Subject: Re:  [3.3/3.4/3.5] exception in constructor of a
 class to be thrown is not caught

EDG performs this same optimization, but they seem to have made a different
choice as to whether or not the call which creates the object should be
allowed to throw; it seems impossible to construct a testcase which will
terminate due to a throw during the initialization of the exception object.
Their choice, which the submitter of this bug also expects, seems
reasonable to me.

Jason


-- 


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

--- You are receiving this mail because: ---
You reported the bug, or are watching the reporter.




[Bug c++/13944] [3.3/3.4/3.5 Regression] exception in constructor of a class to be thrown is not caught

2004-02-16 Thread jason at redhat dot com

--- Additional Comments From jason at redhat dot com  2004-02-16 18:27 
---
Subject: Re:  [3.3/3.4/3.5] exception in constructor of a
 class to be thrown is not caught

Actually, this testcase does terminate under EDG:

  struct A
  {
A() { }
A(const A&) { throw 1; }
  };

  int main()
  {
A a;

try
 {
   throw a;
 }
catch(...)
 {
 }
  }

To match this behavior, we need to treat cases where we elide the copy
constructor differently, as discussed in my comment in build_throw.

Jason


-- 


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

--- You are receiving this mail because: ---
You reported the bug, or are watching the reporter.




[Bug c++/13944] [3.3/3.4 Regression] exception in constructor of a class to be thrown is not caught

2004-03-02 Thread jason at redhat dot com

--- Additional Comments From jason at redhat dot com  2004-03-02 17:17 
---
Subject: Re:  [3.3/3.4 Regression] exception in constructor
 of a class to be thrown is not caught

On 2 Mar 2004 11:10:38 -, "steven at gcc dot gnu dot org" <[EMAIL 
PROTECTED]> wrote:

> --- Additional Comments From steven at gcc dot gnu dot org  2004-03-02 
> 11:10 ---
> Jason, what about gcc 3.4, can the patch be applied there, too? 

I'm working on a patch for 3.4.

Jason


-- 


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

--- You are receiving this mail because: ---
You reported the bug, or are watching the reporter.




[Bug c++/13944] [3.3 Regression] exception in constructor of a class to be thrown is not caught

2004-03-02 Thread jason at redhat dot com

--- Additional Comments From jason at redhat dot com  2004-03-02 20:54 
---
Subject: Re:  [3.3 Regression] exception in constructor of a
 class to be thrown is not caught

On 2 Mar 2004 20:44:22 -, "gdr at integrable-solutions dot net" <[EMAIL 
PROTECTED]> wrote:

>   Do you think, the patch can be backported to gcc-3_3-branch?  It
> seems to be a  patch chasing party...  

Here's the backport; I'm testing it now.

*** except.c.~1~2004-03-01 16:25:03.0 -0500
--- except.c2004-03-02 14:57:22.0 -0500
*** do_allocate_exception (type)
*** 511,519 
 NULL_TREE));
  }
  
! #if 0
! /* Call __cxa_free_exception from a cleanup.  This is never invoked
!directly, but see the comment for stabilize_throw_expr.  */
  
  static tree
  do_free_exception (ptr)
--- 511,517 
 NULL_TREE));
  }
  
! /* Call __cxa_free_exception from a cleanup.  */
  
  static tree
  do_free_exception (ptr)
*** do_free_exception (ptr)
*** 533,539 
  
return build_function_call (fn, tree_cons (NULL_TREE, ptr, NULL_TREE));
  }
- #endif
  
  /* Wrap all cleanups for TARGET_EXPRs in MUST_NOT_THROW_EXPR.
 Called from build_throw via walk_tree_without_duplicates.  */
--- 531,536 
*** build_throw (exp)
*** 669,674 
--- 666,672 
tree object, ptr;
tree tmp;
tree temp_expr, allocate_expr;
+   bool elided;
  
fn = get_identifier ("__cxa_throw");
if (IDENTIFIER_GLOBAL_VALUE (fn))
*** build_throw (exp)
*** 723,728 
--- 721,728 
object = build1 (NOP_EXPR, build_pointer_type (TREE_TYPE (exp)), ptr);
object = build_indirect_ref (object, NULL);
  
+   elided = (TREE_CODE (exp) == TARGET_EXPR);
+ 
/* And initialize the exception object.  */
exp = build_init (object, exp, LOOKUP_ONLYCONVERTING);
if (exp == error_mark_node)
*** build_throw (exp)
*** 731,737 
  return error_mark_node;
}
  
!   exp = build1 (MUST_NOT_THROW_EXPR, TREE_TYPE (exp), exp);
/* Prepend the allocation.  */
exp = build (COMPOUND_EXPR, TREE_TYPE (exp), allocate_expr, exp);
if (temp_expr != void_zero_node)
--- 731,741 
  return error_mark_node;
}
  
!   if (elided)
!   exp = build (TRY_CATCH_EXPR, void_type_node, exp,
!do_free_exception (ptr));
!   else
!   exp = build1 (MUST_NOT_THROW_EXPR, void_type_node, exp);
/* Prepend the allocation.  */
exp = build (COMPOUND_EXPR, TREE_TYPE (exp), allocate_expr, exp);
if (temp_expr != void_zero_node)


-- 


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

--- You are receiving this mail because: ---
You reported the bug, or are watching the reporter.