g++ 2.97 20010103 strange bug w/blitz++
nbecker@fred.net
nbecker@fred.net
Thu Jan 4 06:08:00 GMT 2001
/opt/gcc/bin/gcc -v
Reading specs from /opt/gcc/lib/gcc-lib/i686-pc-linux-gnu/2.97/specs
Configured with: ../../gcc/configure --prefix=/opt/gcc
gcc version 2.97 20010103 (experimental)
I can't understand this. Look at the first error. How can this be
ambiguous?
First of all, the first "candidate" is explicit.
Secondly, where is
blitz::MemoryBlockReference<T_type>::MemoryBlockReference(unsigned int = 0)? I don't see
a default argument.
/opt/gcc/bin/g++ -I./.. -ftemplate-depth-30 -g -DBZ_DEBUG -c ./qcd.cpp -save-temps
../blitz/vector.h: In constructor `blitz::Vector<P_numtype>::Vector() [with
P_numtype = const char*]':
../blitz/benchext.cc:38: instantiated from `blitz::BenchmarkExt<P_parameter>::BenchmarkExt(const char*, int) [with P_parameter = int]'
qcd.cpp:31: instantiated from here
../blitz/vector.h:115: call of overloaded `MemoryBlockReference()' is ambiguous
../blitz/memblock.h:298: candidates are:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference(unsigned int = 0)
[with P_type = const char*]
../blitz/memblock.h:252:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference() [with P_type =
const char*]
../blitz/matrix.h: In constructor `blitz::Matrix<P_numtype,
P_structure>::Matrix() [with P_numtype = double, P_structure =
blitz::RowMajor]':
../blitz/benchext.cc:38: instantiated from `blitz::BenchmarkExt<P_parameter>::BenchmarkExt(const char*, int) [with P_parameter = int]'
qcd.cpp:31: instantiated from here
../blitz/matrix.h:97: call of overloaded `MemoryBlockReference()' is ambiguous
../blitz/memblock.h:298: candidates are:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference(unsigned int = 0)
[with P_type = double]
../blitz/memblock.h:252:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference() [with P_type =
double]
../blitz/vector.h: In constructor `blitz::Vector<P_numtype>::Vector() [with
P_numtype = int]':
../blitz/benchext.cc:38: instantiated from `blitz::BenchmarkExt<P_parameter>::BenchmarkExt(const char*, int) [with P_parameter = int]'
qcd.cpp:31: instantiated from here
../blitz/vector.h:115: call of overloaded `MemoryBlockReference()' is ambiguous
../blitz/memblock.h:298: candidates are:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference(unsigned int = 0)
[with P_type = int]
../blitz/memblock.h:252:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference() [with P_type =
int]
../blitz/vector.h: In constructor `blitz::Vector<P_numtype>::Vector() [with
P_numtype = long int]':
../blitz/benchext.cc:38: instantiated from `blitz::BenchmarkExt<P_parameter>::BenchmarkExt(const char*, int) [with P_parameter = int]'
qcd.cpp:31: instantiated from here
../blitz/vector.h:115: call of overloaded `MemoryBlockReference()' is ambiguous
../blitz/memblock.h:298: candidates are:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference(unsigned int = 0)
[with P_type = long int]
../blitz/memblock.h:252:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference() [with P_type =
long int]
../blitz/vector.h: In constructor `blitz::Vector<P_numtype>::Vector() [with
P_numtype = double]':
../blitz/benchext.cc:38: instantiated from `blitz::BenchmarkExt<P_parameter>::BenchmarkExt(const char*, int) [with P_parameter = int]'
qcd.cpp:31: instantiated from here
../blitz/vector.h:115: call of overloaded `MemoryBlockReference()' is ambiguous
../blitz/memblock.h:298: candidates are:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference(unsigned int = 0)
[with P_type = double]
../blitz/memblock.h:252:
blitz::MemoryBlockReference<T_type>::MemoryBlockReference() [with P_type =
double]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type = int
QCDBlitzVersion(blitz::BenchmarkExt<int>&)::spinor]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type = int
QCDBlitzVersion(blitz::BenchmarkExt<int>&)::spinor]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = int
QCDBlitzVersion(blitz::BenchmarkExt<int>&)::spinor]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type = int
QCDBlitzVersion(blitz::BenchmarkExt<int>&)::SU3Gauge]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type = int
QCDBlitzVersion(blitz::BenchmarkExt<int>&)::SU3Gauge]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = int
QCDBlitzVersion(blitz::BenchmarkExt<int>&)::SU3Gauge]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type =
latticeUnit]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type =
latticeUnit]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = latticeUnit]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type = const
char*]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type =
const char*]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = const char*]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type = double]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type =
double]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = double]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type = int]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type =
int]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = int]
../blitz/memblock.h: In constructor
`blitz::NullMemoryBlock<P_type>::NullMemoryBlock() [with P_type = long
int]':
../blitz/memblock.cc:38: instantiated from here
../blitz/memblock.h:226: call of overloaded `MemoryBlock()' is ambiguous
../blitz/memblock.h:106: candidates are:
blitz::MemoryBlock<P_type>::MemoryBlock(unsigned int = 0) [with P_type =
long int]
../blitz/memblock.h:98:
blitz::MemoryBlock<P_type>::MemoryBlock() [with P_type = long int]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: qcd.ii.bz2
Type: application/x-bzip2
Size: 110482 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-bugs/attachments/20010104/b90d4ad9/attachment.bz2>
More information about the Gcc-bugs
mailing list