summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2011-05-09 19:56:00 +0000
committerAndrew Stitcher <astitcher@apache.org>2011-05-09 19:56:00 +0000
commitd5dfdb1858be769350ada946df7c3b03db1564b3 (patch)
treea5a2aa17936891329a0a10f6001afdb305e7ac4a /cpp/src
parent9a1cbfa40824040d26dcf632cfb24681405b6dd7 (diff)
downloadqpid-python-d5dfdb1858be769350ada946df7c3b03db1564b3.tar.gz
QPID-3004: Get Clang to compile qpid c++
- Finish getting boost::intrusive_ptr working (may be compiler bug) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1101181 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qmf/PrivateImplRef.h2
-rw-r--r--cpp/src/qpid/RefCounted.h6
-rw-r--r--cpp/src/qpid/cluster/Connection.h3
-rw-r--r--cpp/src/qpid/cluster/types.h1
-rw-r--r--cpp/src/qpid/framing/MethodBodyFactory.h1
5 files changed, 9 insertions, 4 deletions
diff --git a/cpp/src/qmf/PrivateImplRef.h b/cpp/src/qmf/PrivateImplRef.h
index 8b698c4199..960cbb2e09 100644
--- a/cpp/src/qmf/PrivateImplRef.h
+++ b/cpp/src/qmf/PrivateImplRef.h
@@ -23,8 +23,8 @@
*/
#include "qmf/ImportExport.h"
-#include <boost/intrusive_ptr.hpp>
#include "qpid/RefCounted.h"
+#include <boost/intrusive_ptr.hpp>
namespace qmf {
diff --git a/cpp/src/qpid/RefCounted.h b/cpp/src/qpid/RefCounted.h
index e7a9bf31c1..f9e0107103 100644
--- a/cpp/src/qpid/RefCounted.h
+++ b/cpp/src/qpid/RefCounted.h
@@ -53,8 +53,10 @@ protected:
// intrusive_ptr support.
namespace boost {
-inline void intrusive_ptr_add_ref(const qpid::RefCounted* p) { p->addRef(); }
-inline void intrusive_ptr_release(const qpid::RefCounted* p) { p->release(); }
+template <typename T>
+inline void intrusive_ptr_add_ref(const T* p) { p->qpid::RefCounted::addRef(); }
+template <typename T>
+inline void intrusive_ptr_release(const T* p) { p->qpid::RefCounted::release(); }
}
diff --git a/cpp/src/qpid/cluster/Connection.h b/cpp/src/qpid/cluster/Connection.h
index b290824805..a0da9efbb8 100644
--- a/cpp/src/qpid/cluster/Connection.h
+++ b/cpp/src/qpid/cluster/Connection.h
@@ -24,10 +24,10 @@
#include "types.h"
#include "OutputInterceptor.h"
-#include "EventFrame.h"
#include "McastFrameHandler.h"
#include "UpdateReceiver.h"
+#include "qpid/RefCounted.h"
#include "qpid/broker/Connection.h"
#include "qpid/broker/SecureConnection.h"
#include "qpid/broker/SemanticState.h"
@@ -55,6 +55,7 @@ class TxAccept;
namespace cluster {
class Cluster;
class Event;
+struct EventFrame;
/** Intercept broker::Connection calls for shadow and local cluster connections. */
class Connection :
diff --git a/cpp/src/qpid/cluster/types.h b/cpp/src/qpid/cluster/types.h
index 0795e5e77a..bfb4fd5b9e 100644
--- a/cpp/src/qpid/cluster/types.h
+++ b/cpp/src/qpid/cluster/types.h
@@ -24,6 +24,7 @@
#include "config.h"
#include "qpid/Url.h"
+#include "qpid/RefCounted.h"
#include "qpid/sys/IntegerTypes.h"
#include <boost/intrusive_ptr.hpp>
#include <utility>
diff --git a/cpp/src/qpid/framing/MethodBodyFactory.h b/cpp/src/qpid/framing/MethodBodyFactory.h
index 607ec9d959..88bc444795 100644
--- a/cpp/src/qpid/framing/MethodBodyFactory.h
+++ b/cpp/src/qpid/framing/MethodBodyFactory.h
@@ -22,6 +22,7 @@
*
*/
#include "qpid/framing/amqp_types.h"
+#include "qpid/framing/AMQBody.h"
#include <boost/intrusive_ptr.hpp>
namespace qpid {