On Wed, 2003-07-16 at 06:43, Serassio Guido wrote:

> Done, only 57 errors left ....
> Yesterday the errors are more then 300 .....
> 
> Some interesting things:
> 
> MSVC seems don't like constructs like this:
> 
> template <class MatchType>
> MemPool (*ACLStrategised<MatchType>::Pool)(NULL);
> 
> this syntax works:
> 
> template <class MatchType>
> MemPool *ACLStrategised<MatchType>::Pool = NULL;
> 
> Any hints ?
> 
Hmm. not off hand. I'll need to dig up the C++ spec and see what
assignment initialisation on static members implies, regarding race
conditions etc..

(Alan: I'm not worried about overhead for trivial one-offs like this,
but about the potential for races with singletons.)

That is, unless someone lurking knows the standard off-hand? 

> This seems to be the biggest left problem :
> 
> delay_pools.cc
> c:\work\nt-3.0\src\delayvector.h(69) : error C2629: unexpected 'class 
> DelayVector::Id ('
> c:\work\nt-3.0\src\delayvector.h(69) : error C2238: unexpected token(s) 
> preceding ';'
> c:\work\nt-3.0\src\delayvector.h(76) : error C2027: use of undefined type 
> 'DelayVector'
>          c:\work\nt-3.0\src\delayvector.h(41) : see declaration of 
> 'DelayVector'

Here, Id is a embedded class of DelayVector. Can you try changing
DelayVector::Pointer on line 69 to RefCount<DelayVector> ?

> c:\work\nt-3.0\src\acl.cc(716) : error C2664: 'delete' : cannot convert 
> parameter 1 from 'const class acl_access *const ' to 'void *'
>          Conversion loses qualifiers

Ok, I've added a test case to see if my deleteSelf hack is needed on any platform.

If you can confirm that the test case VirtualDeleteOperator works on msvc, then all we 
need is a couple of extra positives: xlc and egcs (the OS2 port).

Rob


-- 
GPG key available at: <http://members.aardvark.net.au/lifeless/keys.txt>.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to