activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mary Kohl <k...@metsci.com>
Subject ActiveMQ-CPP 3.3.0 Compiler error C2487 in VS 2008
Date Wed, 13 Apr 2011 20:42:25 GMT
I downloaded the source for ActiveMQ-CPP v 3.3.0 and tried to build using VS
2008 with the ReleaseDLL configuration.
It threw the C2487 error with the following description:

"You can declare a whole class, or certain members of a non-DLL interface
class, with DLL interface. You cannot declare a class with DLL interface and
then declare a member of that class with DLL interface."

The offending class is PrimitiveList with the declaration:

    class AMQCPP_API PrimitiveList : public decaf::util::LinkedList {
...

I think it is being caused by the PrimitiveValueNode declaration:

   class AMQCPP_API PrimitiveValueNode {
...

AMQCPP_API is defined as
 #define AMQCPP_API __declspec(dllexport)

If I remove the AMQCPP_API from the PrimitiveList declaration, the library
and dll build without error, but this means that PrimitiveList will not have
an external interface...not sure if this is desired behavior.



--
View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-CPP-3-3-0-Compiler-error-C2487-in-VS-2008-tp3448187p3448187.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Mime
View raw message