You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Albert Strasheim (JIRA)" <ji...@apache.org> on 2008/05/26 01:00:54 UTC

[jira] Commented: (AMQCPP-176) Work around Visual Studio .NET 2003 covariant return issues

    [ https://issues.apache.org/activemq/browse/AMQCPP-176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43021#action_43021 ] 

Albert Strasheim commented on AMQCPP-176:
-----------------------------------------

Here's an example of an error one typically sees when building with Visual Studio .NET 2003:

{noformat} 
InitDirector.cpp
..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(81) : error C2511: 'decaf::lang::Throwable *activemq::connector::stomp::marshal::MarshalException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::marshal::MarshalException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(30) : see declaration of 'activemq::connector::stomp::marshal::MarshalException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(81) : error C2511: 'activemq::exceptions::ActiveMQException *activemq::connector::stomp::marshal::MarshalException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::marshal::MarshalException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(30) : see declaration of 'activemq::connector::stomp::marshal::MarshalException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(81) : error C2511: 'decaf::lang::Throwable *activemq::connector::stomp::marshal::MarshalException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::marshal::MarshalException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(30) : see declaration of 'activemq::connector::stomp::marshal::MarshalException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(81) : error C2511: 'activemq::exceptions::ActiveMQException *activemq::connector::stomp::marshal::MarshalException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::marshal::MarshalException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\marshal\MarshalException.h(30) : see declaration of 'activemq::connector::stomp::marshal::MarshalException'
..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(79) : error C2511: 'decaf::lang::Throwable *activemq::connector::ConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::ConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(28) : see declaration of 'activemq::connector::ConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(79) : error C2511: 'activemq::exceptions::ActiveMQException *activemq::connector::ConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::ConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(28) : see declaration of 'activemq::connector::ConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(79) : error C2511: 'decaf::lang::Throwable *activemq::connector::ConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::ConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(28) : see declaration of 'activemq::connector::ConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(79) : error C2511: 'activemq::exceptions::ActiveMQException *activemq::connector::ConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::ConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\ConnectorException.h(28) : see declaration of 'activemq::connector::ConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(80) : error C2511: 'decaf::lang::Throwable *activemq::connector::stomp::StompConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::StompConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(29) : see declaration of 'activemq::connector::stomp::StompConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(80) : error C2511: 'activemq::exceptions::ActiveMQException *activemq::connector::stomp::StompConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::StompConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(29) : see declaration of 'activemq::connector::stomp::StompConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(80) : error C2511: 'activemq::connector::ConnectorException *activemq::connector::stomp::StompConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::StompConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(29) : see declaration of 'activemq::connector::stomp::StompConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(80) : error C2511: 'decaf::lang::Throwable *activemq::connector::stomp::StompConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::StompConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(29) : see declaration of 'activemq::connector::stomp::StompConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(80) : error C2511: 'activemq::exceptions::ActiveMQException *activemq::connector::stomp::StompConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::StompConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(29) : see declaration of 'activemq::connector::stomp::StompConnectorException'
..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(80) : error C2511: 'activemq::connector::ConnectorException *activemq::connector::stomp::StompConnectorException::clone(void)' : overloaded member function not found in 'activemq::connector::stomp::StompConnectorException'
        ..\..\activemq-cpp\src\main\activemq\connector\stomp\StompConnectorException.h(29) : see declaration of 'activemq::connector::stomp::StompConnectorException'
{noformat} 

> Work around Visual Studio .NET 2003 covariant return issues
> -----------------------------------------------------------
>
>                 Key: AMQCPP-176
>                 URL: https://issues.apache.org/activemq/browse/AMQCPP-176
>             Project: ActiveMQ C++ Client
>          Issue Type: Wish
>            Reporter: Albert Strasheim
>            Assignee: Nathan Mittler
>
> It would be very useful if something could be done in the AMQCPP code to work around the issues Visual Studio .NET 2003 has with having base classes with virtual functions as covariant return types.
> These problems are alluded to here:
> http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=23760&SiteID=1
> Some ideas have been discussed here:
> http://www.nabble.com/Unable-to-comile-C%2B%2B-client-on-VC%2B%2B-2003-td14680479s2354.html
> but I'm hoping there might be a way to slightly restructure the AMQCPP code instead of resorting to preprocessor directives.
> Any ideas I could try would be much appreciated.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.