From: Dan W. (danw_at_[hidden])
Date: 2004-01-10 19:34:46
Daniel Wallin wrote:
> Well, I think it's kind of disturbing to use a macro to declare the
> check_invariants() function. If the compiler can't manage the lifetime
> of temporaries I think you should file a bug report, not work around it
> with macros that propagate to user code.
I filed a bug report. As for the macro, it was kind of needed anyways.
> Also, note that:
> template< typename T >
> class EEICHK
> friend class T;
> ^^^^^^^^^^^^^^^ illegal
> There is no way to make a class template friend with it's template type.
You're right, as always; I did that change after checking the code at
the como online compiler. I'll check anything on comeau before posting
from now on. Filed bug report on this too.
Now I have another bug I found: A derived class can change the state of
a base class member directly, getting around the invariants check of the
base class. I'll work on that and post a new thread when I think it's ready.
Thanks for all the help.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk