$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Vertleyb (vertleyb_at_[hidden])
Date: 2007-05-14 00:16:47
From: "John Femiani" <JOHN.FEMIANI_at_[hidden]>
> I wrote a little macro that uses BOOST_TYPEOF to determine the type of
> one of its arguments, but it fails when I pass (*this) as an argument in
> vc8. I forced emulation because, according to the docs, vc8 does not
> seem to have the bug that let other vc compilers actually support native
> typeof. I don't know the internals of the TYPEOF library well enough
> to diagnose the problem, but the error is easy to produce.
>[...]
> If there is any way to accomplish the type of access I am attempting
> from inside a macro I would really appreciate it (in my use case macros
> seem to be absolutely necessary for other reasons). As you can see from
> the example it is possible to avoid the problem by creating a reference
> to *this and passing that, but I do not like this in principle because
> too many caveats make the macro difficult to use.
I think this problem is not related to the usage inside a macro. It looks like MSVC can't handle "this" inside BOOST_TYPEOF() in
general :-( At some point the compiler gets confused, and thinks that "this" is used outside a member function...
The "native" usage for vc8 is available in CVS, but unfortunately it will not help with this issue.
Regards,
Arkadiy