diff options
author | Remko Tronçon <git@el-tramo.be> | 2012-12-09 11:40:34 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2012-12-22 14:25:27 (GMT) |
commit | 67aa40ce209831a651a852d5bb2a083f21900e08 (patch) | |
tree | 7a9d0f8925b2c1d20ffe77554b6ec256e33c0274 | |
parent | 1e9c6a067865b73378af0dd252353efc84efb9b9 (diff) | |
download | swift-67aa40ce209831a651a852d5bb2a083f21900e08.zip swift-67aa40ce209831a651a852d5bb2a083f21900e08.tar.bz2 |
Added 'override' macro to check for override.
Change-Id: I5b49358debd8a9b9c36adf878d109adad0462f16
-rw-r--r-- | Swiften/Base/BoostRandomGenerator.h | 3 | ||||
-rw-r--r-- | Swiften/Base/Override.h | 34 |
2 files changed, 36 insertions, 1 deletions
diff --git a/Swiften/Base/BoostRandomGenerator.h b/Swiften/Base/BoostRandomGenerator.h index b5a6cac..6065ff3 100644 --- a/Swiften/Base/BoostRandomGenerator.h +++ b/Swiften/Base/BoostRandomGenerator.h @@ -7,6 +7,7 @@ #pragma once #include <Swiften/Base/RandomGenerator.h> +#include <Swiften/Base/Override.h> #include <boost/random/mersenne_twister.hpp> @@ -15,7 +16,7 @@ namespace Swift { public: BoostRandomGenerator(); - int generateRandomInteger(int max); + int generateRandomInteger(int max) SWIFTEN_OVERRIDE; private: boost::mt19937 generator; diff --git a/Swiften/Base/Override.h b/Swiften/Base/Override.h new file mode 100644 index 0000000..7f410cf --- /dev/null +++ b/Swiften/Base/Override.h @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2012 Remko Tronçon + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#pragma once + +#if defined(__clang__) +# if __has_feature(cxx_override_control) || __has_extension(cxx_override_control) +# define SWIFTEN_OVERRIDE override +# else +# define SWIFTEN_OVERRIDE +# endif + +#elif defined(__GNUC__) +# if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) +# define SWIFTEN_OVERRIDE override +# else +# define SWIFTEN_OVERRIDE +# endif + +#elif defined(_MSC_VER) +// Actually, 1700 is the first version that supports the C++11 override, but +// older versions apparently support a similar keyword. +# if _MSC_VER >= 1400 +# define SWIFTEN_OVERRIDE override +# else +# define SWIFTEN_OVERRIDE +# endif + +#else +# define SWIFTEN_OVERRIDE +#endif |