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


When I try to compile PFile, my compiler hangs. Yes, that's right,
hangs. I have to stop it manually, and then the files it was compiling
will be locked for a minute or so. Veeeeeery annoying.

This just happened out of the blue, without any code changes, so I
figured my compiler must have gone bad or something, so I uninstalled
and reinstalled. Didn't help. Well, it seems it *is* the code, even
though I'm postivie I haven't updated it via CVS, and for the parts
affected, I really can't remember altering them.

Anyway, finding the *exact* cause is damn well near impossible, as I
have to wait 1 minute each time I try something... (the compiler locks
the files, and as it has hung, it doens't unlock them again). It think
it has something to do with classes that derived from templatized
classes that derive from yet again templatized classes. I'm positive
it's templates and derivation that is the problem.

Also, I've found a bug in MSVC++ 5.0, and I know exactly what it is: If
I use two instantes of a template, say Directory<const Element> and
Directory<Element>, MSVC++ will first instantiate the Directory template
for the type "const Element", but when it encounters the
Directory<Element>, it'll say "I already have an instances of the
Directory template with the Element type, so I'll use that". The
problem, of course, is that one instance has a const Element as it's
parameter, and the other one is non-const. MSVC++ 5.0 ignores this. This
is the reason for the const problems I reported earlier.

I have an example of this bug, where switching the order of two (totally
unrelated) class declarations will make an error move from one class to
the other.

Right now, I'm in the process of downloading service pack 3 for Visual
Studio (a hefty 91 MB). Should be done today or tomorrow. Really sucks
that I can't just get the fixes for MSVC++ 5.0, I also have to get the
fixes for Visual J++, Visual Interdev, Visual Basic etc., and I even
have to get these fixes for ALL languages... :(

Anyway, I really hope the service pack will eliminate these issues. If
it doesn't, it may not be worth the trouble to support MSVC++ 5.0