Build is successful down to vxWorks 6.3.
Here is the diff.
Dirk
Entering 'modules/ca'
Entering 'modules/database'
Entering 'modules/libcom'
Entering 'modules/normativeTypes'
Entering 'modules/pvAccess'
diff --git a/src/client/pv/pvAccess.h b/src/client/pv/pvAccess.h
index fa0028d..4ae23cf 100644
--- a/src/client/pv/pvAccess.h
+++ b/src/client/pv/pvAccess.h
@@ -1445,6 +1445,8 @@ public:
//! Drop all factories
virtual void clear();
+ virtual ~ChannelProviderRegistry() {}
+
private:
// ctor is hidden to ensure explict compile errors from a hypothetical sub-class
// we no longer support sub-classing by outside code
diff --git a/src/client/pva/client.h b/src/client/pva/client.h
index 08998b3..cb59353 100644
--- a/src/client/pva/client.h
+++ b/src/client/pva/client.h
@@ -193,7 +193,12 @@ void registerRefTrack();
*/
class epicsShareClass ClientChannel
{
+#if defined(__GNUC__)&&__GNUC__*100+__GNUC_MINOR__<305
+// workaround for bug in gcc before version 3.5
+public:
+#endif
struct Impl;
+private:
std::tr1::shared_ptr<Impl> impl;
friend class ClientProvider;
friend void detail::registerRefTrack();
Entering 'modules/pvData'
diff --git a/src/misc/pv/epicsException.h b/src/misc/pv/epicsException.h
index 68c9903..9e7c4f8 100644
--- a/src/misc/pv/epicsException.h
+++ b/src/misc/pv/epicsException.h
@@ -181,7 +181,7 @@ do { \
#define PRINT_EXCEPTION(EI) PRINT_EXCEPTION2(EI,stderr)
-#ifndef __GNUC__
+#if !defined(__GNUC__) || __GNUC__ < 4
# define SHOW_EXCEPTION(EI) ::epics::pvData::detail::showException(EI)
#else
# define SHOW_EXCEPTION(EI) \
diff --git a/src/misc/pv/reftrack.h b/src/misc/pv/reftrack.h
index 5d65e84..9257354 100644
--- a/src/misc/pv/reftrack.h
+++ b/src/misc/pv/reftrack.h
@@ -110,7 +110,7 @@ class epicsShareClass RefMonitor
Impl *impl;
public:
RefMonitor();
- ~RefMonitor();
+ virtual ~RefMonitor();
void start(double period=10.0);
void stop();
diff --git a/src/misc/pv/templateMeta.h b/src/misc/pv/templateMeta.h
index 20323a4..454a6c4 100644
--- a/src/misc/pv/templateMeta.h
+++ b/src/misc/pv/templateMeta.h
@@ -12,7 +12,7 @@
// You have been warned!
#if defined(__MINGW32__)
# define FORCE_INLINE inline
-#elif defined(__GNUC__) && __GNUC__>=3
+#elif defined(__GNUC__) && __GNUC__*100+__GNUC_MINOR__>=402
# define FORCE_INLINE __attribute__((always_inline)) inline
#elif defined(_MSC_VER)
# define FORCE_INLINE __forceinline
Entering 'modules/pvDatabase'
Entering 'modules/pva2pva'
diff --git a/pdbApp/pvif.h b/pdbApp/pvif.h
index 328dc0f..cdddf17 100644
--- a/pdbApp/pvif.h
+++ b/pdbApp/pvif.h
@@ -290,7 +290,12 @@ struct epicsShareClass FieldName
lookup(const epics::pvData::PVStructurePtr& S, epics::pvData::PVField** ppenclose) const;
void show() const;
+#if defined(__GNUC__)&&__GNUC__*100+__GNUC_MINOR__<403
+// workaround for bug in gcc before version 4.3 https://gcc.gnu.org/bugs/#cxx_rvalbind
+public:
+#else
private:
+#endif
FieldName(const FieldName&);
FieldName& operator=(const FieldName&);
};
Entering 'modules/pvaClient'
- Replies:
- Re: EPICS 7 vxWorks diff Andrew Johnson
- Navigate by Date:
- Prev:
Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Andrew Johnson
- Next:
Re: warnings about strict aliasing Michael Davidsaver
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: warnings about strict aliasing Benjamin Franksen
- Next:
Re: EPICS 7 vxWorks diff Andrew Johnson
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
|