From 5b11584bfede4e0787532ec3c9ba763100a8898f Mon Sep 17 00:00:00 2001 From: Thomas McGuire Date: Mon, 22 Apr 2013 11:34:40 +0200 Subject: Fix some potential binary compatibility issues Mostly de-inlining methods, and in addition providing a virtual destructor. Change-Id: I0aef91e7a896e8a16fc023a11bd35a5ef3048ee6 Reviewed-by: Bernd Weimer Reviewed-by: Lorn Potter --- src/sensors/make_sensor.pl | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'src/sensors/make_sensor.pl') diff --git a/src/sensors/make_sensor.pl b/src/sensors/make_sensor.pl index 27322517..00afa724 100755 --- a/src/sensors/make_sensor.pl +++ b/src/sensors/make_sensor.pl @@ -315,8 +315,7 @@ class Q_SENSORS_EXPORT '.$filter.' : public QSensorFilter public: virtual bool filter('.$reading.' *reading) = 0; private: - bool filter(QSensorReading *reading) Q_DECL_OVERRIDE - { return filter(static_cast<'.$reading.'*>(reading)); } + bool filter(QSensorReading *reading) Q_DECL_OVERRIDE; }; class Q_SENSORS_EXPORT '.$sensor.' : public QSensor @@ -325,7 +324,7 @@ class Q_SENSORS_EXPORT '.$sensor.' : public QSensor public: explicit '.$sensor.'(QObject *parent = 0); ~'.$sensor.'(); - '.$reading.' *reading() const { return static_cast<'.$reading.'*>(QSensor::reading()); } + '.$reading.' *reading() const; static char const * const type; private: @@ -408,6 +407,11 @@ void '.$reading.'::setMyprop(qreal myprop) \sa QSensorFilter::filter() */ +bool '.$filter.'::filter(QSensorReading *reading) +{ + return filter(static_cast<'.$reading.'*>(reading)); +} + char const * const '.$sensor.'::type("'.$sensor.'"); /*! @@ -450,6 +454,11 @@ char const * const '.$sensor.'::type("'.$sensor.'"); \sa QSensor::reading() */ +'.$reading.' *'.$sensor.'::reading() const +{ + return static_cast<'.$reading.'*>(QSensor::reading()); +} + #include "moc_'.$source.'" QT_END_NAMESPACE '; -- cgit v1.2.3