[Bug c++/48003] New: Regression in Template Constants from 4.5.2

2011-03-06 Thread swestrup at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48003

   Summary: Regression in Template Constants from 4.5.2
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: swest...@gmail.com


The following code compiles cleanly under g++ 4.5.2, but fails to compile under
g++ 4.6.0:

#include 
#include 
boost::mpl::int_ foo;

It produces the errors:

/usr/local/include/boost/mpl/aux_/integral_wrapper.hpp: In
instantiation of ‘mpl_::int_<-0x08000>’:
test_test.cpp:8:27:   instantiated from here
/usr/local/include/boost/mpl/aux_/integral_wrapper.hpp:73:96: error:
‘2147483647’ is not a valid template argument for type ‘int’ because
it is a non-constant expression
/usr/local/include/boost/mpl/aux_/integral_wrapper.hpp:73:96: error:
overflow in constant expression [-fpermissive]

I tested this using Boost 1.46 on a Debian AMD_64 SID system running with a
2.6.36 kernel.


[Bug c++/48281] New: internal compiler error: in record_reference, at cgraphbuild.c:60

2011-03-24 Thread swestrup at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48281

   Summary: internal compiler error: in record_reference, at
cgraphbuild.c:60
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: swest...@gmail.com


The code that triggered this bug is almost certainly in error, but as its
caused an internal compiler error, it seemed worth reporting. That said, I
don't really know *what* caused the bug, except to say that it happened when I
declared my four matrix variables in the attached code (M a ... M d) to be
static.

The code is one unit test from an ongoing project, and I've provided the plain
.cpp code (for reference) and a pre-processed file so you have a chance to
reproduce the bug.

In case it matters, here are my system specs:

$ g++ --version
g++ (Debian 4.6.0~rc1-2) 4.6.0 20110320 (prerelease)
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ uname -a
Linux timelord 2.6.36-zen2-sti-02 #4 ZEN SMP PREEMPT Fri Jan 7 13:21:12 EST
2011 x86_64 GNU/Linux


[Bug c++/48281] internal compiler error: in record_reference, at cgraphbuild.c:60

2011-03-24 Thread swestrup at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48281

--- Comment #1 from Stirling Westrup  2011-03-25 
00:41:11 UTC ---
Created attachment 23770
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23770
c++ code that was preprocessed to generated previous attachment.


[Bug c++/48281] internal compiler error: in record_reference, at cgraphbuild.c:60

2011-03-24 Thread swestrup at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48281

--- Comment #2 from Stirling Westrup  2011-03-25 
00:46:02 UTC ---
It seems that the preprocessed file that generates the error is 3KB in size,
and is being rejected by Bugzilla. How the heck am I supposed to submit it now?


[Bug c++/48281] internal compiler error: in record_reference, at cgraphbuild.c:60

2011-03-24 Thread swestrup at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48281

--- Comment #4 from Stirling Westrup  2011-03-25 
00:57:00 UTC ---
Created attachment 23771
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23771
Minimal test case that triggers the error.

Okay, I've managed to pare the original code down to the bare minimum that
causes the error. This should be much easier to debug.


[Bug c++/48281] internal compiler error: in record_reference, at cgraphbuild.c:60

2011-03-24 Thread swestrup at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48281

--- Comment #5 from Stirling Westrup  2011-03-25 
00:59:04 UTC ---
Created attachment 23772
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23772
Preprocessed version of minimal test case.

Here's a preprocessed version of the minimal test case, just in case you have
some use for it.