Re: lots of problems VC7.1

Janusz opechowski <[email protected]> Thu, 22 Jan 2004 09:24:17 +0000 (GMT)
Newsgroups gmane.comp.lib.mtl.devel
Message-ID <[email protected]>
Cheers.

This is not an attempt to analyze the info.

Please don't treat my answer as criticism , but only a
few remarks based on personal expierience.(not
objective opinion!)

If you see any errors , placed in files of mtl,
like light1D.h or so ,
generally it is your fault, somewhere.
Check the origin of the error, when occurs, when not.

That is it , but if you wish more here it is :

More :

Initially I was writing every class as follows :

newclass.h -> declaration,
newclass_impl.h -> implementation of templated
functions, dependent on various matrices.

But as code grows (computational math as yours), there
sometimes really tough errors occur.

After being tired after one of such bugs,
I hanged my strategy into conventional one.
(newclass.h and newclass.cpp)

I use not templated classes, (or rather decrease their
number as much as possible) 
though being able to use all funcionality of MSVC,
treating MTL as highly flexible tool.

Keep all clear and maintain functionality of MSVC.

...
also it would be perfect to use with Intel compiler,
if possible.


Janusz




 --- mascix <[email protected]> wrote: > my name
is özkan pakdil. I am developing
> http://s3dmesh.sf.net and tring to
> make solver for FEM now. and MTL and ITL giving me
> hard time. I am using
> VS7.1 and QT3.2.2 in win32 and these are the errors
> that I have from VS.
> thanks.
> 
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(87):
> error C2039: '_Ptrit' : is
> not a member of 'std'
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(87):
> error C2143: syntax error
> : missing ';' before '<'
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(87):
> error C2238: unexpected
> token(s) preceding ';'
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(88):
> error C2039: '_Ptrit' : is
> not a member of 'std'
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(88):
> error C2059: syntax error
> : '<'
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(88):
> error C2238: unexpected
> token(s) preceding ';'
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(90):
> error C2065:
> 'ptr_iterator' : undeclared identifier
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(92):
> error C2065:
> 'ptr_const_iterator' : undeclared identifier
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(102):
> error C3203:
> 'dense_iterator' : class template invalid as
> template argument for template
> parameter 'Iter', expected a real type
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(104):
> error C3203:
> 'dense_iterator' : class template invalid as
> template argument for template
> parameter 'Iter', expected a real type
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(506): error C2039:
> 'value_type' : is not a member
> of 'std::iterator_traits<int>'
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(168) : see declaration of
> 'std::iterator_traits<int>'
>        
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\reverse_iter.h(39)
> : see
> reference to class template instantiation
> 'std::reverse_iterator<_RanIt>'
> being compiled
>         with
>         [
>             _RanIt=int
>         ]
>        
> c:\Qt\3.2.2Educational\s3dmesh\mtl\light1D.h(148) :
> see reference to
> class template instantiation
> 'mtl::reverse_iter<Iter>' being compiled
>         with
>         [
>             Iter=int
>         ]
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(506): error C2146: syntax
> error : missing ','
> before identifier 'value_type'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(506): error C2065:
> 'value_type' : undeclared
> identifier
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(507): error C2039:
> 'difference_type' : is not a
> member of 'std::iterator_traits<int>'
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(168) : see declaration of
> 'std::iterator_traits<int>'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(507): error C2146: syntax
> error : missing ','
> before identifier 'difference_type'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(507): error C2065:
> 'difference_type' : undeclared
> identifier
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(508): error C2039:
> 'pointer' : is not a member of
> 'std::iterator_traits<int>'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(508): error C2146: syntax
> error : missing ','
> before identifier 'pointer'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(508): error C2065:
> 'pointer' : undeclared
> identifier
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(509): error C2039:
> 'reference' : is not a member
> of 'std::iterator_traits<int>'
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(168) : see declaration of
> 'std::iterator_traits<int>'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(509): error C2146: syntax
> error : missing ','
> before identifier 'reference'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(509): error C2065:
> 'reference' : undeclared
> identifier
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(509): error C2976:
> 'std::iterator' : too few
> template arguments
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(66) : see declaration of
> 'std::iterator'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(513): error C2039:
> 'difference_type' : is not a
> member of 'std::iterator_traits<int>'
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(168) : see declaration of
> 'std::iterator_traits<int>'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(514): error C2039:
> 'pointer' : is not a member of
> 'std::iterator_traits<int>'
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(168) : see declaration of
> 'std::iterator_traits<int>'
> C:\Program Files\Microsoft Visual Studio .NET
> 2003\Vc7\include\xutility(515): error C2039:
> 'reference' : is not a member
> of 'std::iterator_traits<int>'
>         C:\Program Files\Microsoft Visual Studio
> .NET
> 2003\Vc7\include\xutility(168) : see declaration of
> 'std::iterator_traits<int>'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(415):
> error C2039: '_Ptrit'
> : is not a member of 'std'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(415):
> error C2143: syntax
> error : missing ';' before '<'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(415):
> error C2238:
> unexpected token(s) preceding ';'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(416):
> error C2039: '_Ptrit'
> : is not a member of 'std'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(416):
> error C2059: syntax
> error : '<'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(416):
> error C2238:
> unexpected token(s) preceding ';'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(418):
> error C3861:
> 'ptr_iterator': identifier not found, even with
> argument-dependent lookup
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(419):
> error C3861:
> 'ptr_const_iterator': identifier not found, even
> with argument-dependent
> lookup
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(428):
> error C3203:
> 'dense_iterator' : class template invalid as
> template argument for template
> parameter 'Iter', expected a real type
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\linalg_vec.h(430):
> error C3203:
> 'dense_iterator' : class template invalid as
> template argument for template
> parameter 'Iter', expected a real type
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\light_matrix.h(128):
> warning C4346:
>
'mtl::light_matrix<T,SizeType,Orien,Strided>::oned::value_type'
> : dependent
> name is not a type
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\light_matrix.h(128):
> error C2146: syntax
> error : missing ';' before identifier 'value_type'
>
c:\Qt\3.2.2Educational\s3dmesh\mtl\light_matrix.h(128):
> error C2838:
> 'value_type' : illegal qualified name in member
> declaration
> 
=== message truncated === 

________________________________________________________________________
Yahoo! Messenger - Communicate instantly..."Ping" 
your friends today! Download Messenger Now 
http://uk.messenger.yahoo.com/download/index.html
_______________________________________________
This list is archived at http://www.osl.iu.edu/MailArchives/mtl-devel/