[Bug c++/24690] New: error using TinyVector temporary as default constructor value

2005-11-05 Thread faheem at email dot unc dot edu
Using TinyVector from the Blitz++ C++ library (http://www.oonumerics.org/b as a
temporary to initialize a default constructor values gives errors. The actual
code follows. Preprocessed code attached.

#include blitz/tinyvec-et.h

class Foo
{
  blitz::TinyVectordouble, 3 x;

  Foo(blitz::TinyVectordouble, 3 _x =
  blitz::TinyVectordouble, 3(0.0))
: x(_x){}
};

int main()
{
  return 0;
}


-- 
   Summary: error using TinyVector temporary as default constructor
value
   Product: gcc
   Version: 3.3.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: faheem at email dot unc dot edu


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



[Bug c++/24690] error using TinyVector temporary as default constructor value

2005-11-05 Thread faheem at email dot unc dot edu


--- Comment #1 from faheem at email dot unc dot edu  2005-11-06 03:05 
---
Created an attachment (id=10158)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10158action=view)
Preprocessed file showing the error

Error is:

foo.cc:15: error: type specifier omitted for parameter
foo.cc:15: error: parse error before numeric constant
foo.cc:16: error: missing ';' before right brace


-- 


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



[Bug c++/24171] g++-3.3: internal compiler error: in resolve_overloaded_unification, at cp/pt.c:8541

2005-10-03 Thread faheem at email dot unc dot edu


--- Comment #5 from faheem at email dot unc dot edu  2005-10-03 15:32 
---
(In reply to comment #4)
 Here is a reduced testcase for the bug effecting 2.95.3-3.4.0 but not 4.0.0 or
 the mainline:
 templatetypename _Tp struct _List_iterator {}; 
  _List_iteratorint end();
  templatetypename P_numtype, int N_length class TinyVector {}; 
  templatetypename T, int N   bool TinyVectoreq(const TinyVectorT, N u,
 const TinyVectorT, N v);
  void test_collision()   {   (equal(end(), end(), (end(),
 TinyVectoreqint, 3)));
 
 The other reduced testcase for 3.4.0-current is already recorded as PR 21592 
 so
 closing as a dup of that bug since the first only is only reproducible after
 3.3.3 and the one in this comment is only 4.0.0 and below.
 
 *** This bug has been marked as a duplicate of 21592 ***
 

So, apparently there are two things wrong. The problem that corresponds to
21592 is my error, is that correct? Can you point me to where the error is in
my code?

The second (corresponding to the testcase above) is a bona fide bug,
correct? This looks like it corresponds to the call to equal. Can you suggest a
workaround for this?

Thanks.Faheem.


-- 


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



[Bug c++/24171] New: g++-3.3: internal compiler error: in resolve_overloaded_unification, at cp/pt.c:8541

2005-10-02 Thread faheem at email dot unc dot edu
Hi,

I've also reported this bug to the Debian Bug tracking system at
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=331265

I'll repeat it here.

Package: g++-3.3
Version: 1:3.3.5-13
Severity: normal

When building on x86, g++ 3.3 fails with the following error.

scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
g++ -Wall -g -O3 -save-temps -c -o geometry.o geometry.cpp
g++ -Wall -g -O3 -save-temps -c -o msi_tester.o msi_tester.cpp
In file included from msi_tester.cpp:5:
environment_test.hpp: In member function void
   environment_test::test_collision()':
   environment_test.hpp:74: internal compiler error: in
   resolve_overloaded_unification, at cp/pt.c:8541

I attach the msi_tester.ii file from -save-temps.

I have tried this with g++-3.4 and g++-4.0.1 from testing, and get similar
errors from both. Switching off optimization makes no difference in all
cases. Suggestions for a workaround would be appreciated.

I have not tried earlier versions of g++.

I can send original sources if necessary. Let me know if you want me to
report this upstream, or if you need more information.

  Faheem.


-- 
   Summary: g++-3.3: internal compiler error: in
resolve_overloaded_unification, at cp/pt.c:8541
   Product: gcc
   Version: 3.3.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: faheem at email dot unc dot edu


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



[Bug c++/24171] g++-3.3: internal compiler error: in resolve_overloaded_unification, at cp/pt.c:8541

2005-10-02 Thread faheem at email dot unc dot edu


--- Comment #1 from faheem at email dot unc dot edu  2005-10-03 00:48 
---
Created an attachment (id=9863)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9863action=view)
Preprocessed file to reproduce bug.


-- 


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