summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSudarsana Babu Nagineni <sudarsana.babu@mapbox.com>2018-07-09 11:18:30 +0300
committerSudarsana Babu Nagineni <sudarsana.babu@mapbox.com>2018-07-30 12:38:24 +0300
commit15a1c7b71f276b558f028eabae53456f444cebbc (patch)
treea4b3ada175c2e43101f75fc1ba6c7eaf27d2993f /include
parentf05199e2d94a085c615aea96c867280e88a6ef6e (diff)
downloadqtlocation-mapboxgl-15a1c7b71f276b558f028eabae53456f444cebbc.tar.gz
Fix compilation errors with libc++ on QNX 7
This patch fixes the compilation errors on QNX 7: 1) QNX 7 compiler (i.e qcc based GCC 5.4.0 with libc++ from LLVM) has a limited c++11 feature support and causing the compilation errors with the inheriting constructors. This fixes the issues by providing the required constructors explicitly. 2) Resolves an ambiguous overload error with optional<T>
Diffstat (limited to 'include')
-rw-r--r--include/mbgl/style/expression/compound_expression.hpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/mbgl/style/expression/compound_expression.hpp b/include/mbgl/style/expression/compound_expression.hpp
index 04562752a6..c618f2f206 100644
--- a/include/mbgl/style/expression/compound_expression.hpp
+++ b/include/mbgl/style/expression/compound_expression.hpp
@@ -33,7 +33,10 @@ namespace expression {
*/
struct VarargsType { type::Type type; };
template <typename T>
-struct Varargs : std::vector<T> { using std::vector<T>::vector; };
+struct Varargs : std::vector<T> {
+ template <class... Args>
+ Varargs(Args&&... args) : std::vector<T>(std::forward<Args>(args)...) {}
+};
namespace detail {
// Base class for the Signature<Fn> structs that are used to determine