Weird problem with templates

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

I am not a member of this list, therefore I will be grateful if you CC
me a copy of your responses. 

I have the next problem with a source file: 

When compiler reaches the next code:

template <>
void core_array_by_scalar< complex<double> >(const maTC &op1,
   const complex<double> &op2, maTC &result, char operation) _THROW {
 
it complains with:

Src/MultidimBasic.inc:332: error: `double_complex' was not declared in
this scope
Src/MultidimBasic.inc:332: error: template argument 1 is invalid


Well, I have included:

#include <complex>

Some time ago it was compiled with complex.h and it did works. Now it
does if I change it back. The most strage thing (for me) is that this
part of code compiles well with <complex> in the same file:

bool operator == (const ma< complex<double> > &op1, const ma<
complex<double> > &op2) {

On the other hand, if I change <complex.h> to something similat to that
found on complex.h so:

#include <complex>

using std::complex;
typedef complex<float>	float_complex;
typedef complex<double> double_complex;
typedef complex<long double>    long_double_complex;


It does compile perfectly... I am puzzled. Can you explain me which is
the error please?.

Thank you very much,
Roman


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux