[aspectc-user] compiling boost library
Matthias Urban
matthias.urban at pure-systems.com
Thu Jul 15 11:10:40 CEST 2004
Hi,
> 2) In the STL implementation Microsoft use code like this:
>
> class _CRTIMP_PURE exception
> { // base of all library exceptions
> public:
> ...
> exception& __CLR_OR_THIS_CALL operator=(const exception& _That)
> {
> if (this != &_That)
> {
> this->exception::~exception();
> this->exception::exception(_That); // -> AC++ ERROR
> }
> return *this;
> }
> ...
>
> but ac++ report an error:
>
> D:/Programmi/Microsoft Visual Studio 8/VC/INCLUDE/exception:120: error:
> `exception::exception' does not refer to object or function
>
> Is this a Microsoft C++ extension? Can I solve this?
This is a MS Visual C++ extension indeed. In ISO C++ it is not possible
(even not parsable) to call a constructor directly in a member access
expression.
Since there is no conflicting other meaning in ISO C++ we should support
this syntax too. Thank you for reporting this extension.
For now you can try to parse your application using the
--skip-bodies-non-prj command line option (also usable in the config
file). This causes the parser to skip all function/method bodies in
files that do not belong to your project (e.g. system include files).
Matthias
More information about the aspectc-user
mailing list