diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2017-01-07 17:22:02 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2017-01-09 21:44:23 +0300 |
commit | 13fd92f4c8e4f68bf4f9cc0b7de95e7ee7fe9d82 (patch) | |
tree | 2fefa382b0c8c1a6dc2e93a7f627096152e7d0a3 | |
parent | c55240fb05151cae046c75a793c164d72c988db2 (diff) |
Increase size of variable value::data_ to compile with libc++
-rw-r--r-- | build2/module | 2 | ||||
-rw-r--r-- | build2/variable | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/build2/module b/build2/module index 8c64676..7d6439f 100644 --- a/build2/module +++ b/build2/module @@ -68,7 +68,7 @@ namespace build2 struct loaded_module_map: std::map<string, module_state> { - template<typename T> + template <typename T> T* lookup (const string& name) const { diff --git a/build2/variable b/build2/variable index 047dc04..6aec85b 100644 --- a/build2/variable +++ b/build2/variable @@ -220,9 +220,9 @@ namespace build2 public: // Fast, unchecked cast of data_ to T. // - template<typename T> T& as () & {return reinterpret_cast<T&> (data_);} - template<typename T> T&& as () && {return move (as<T> ());} - template<typename T> const T& as () const& { + template <typename T> T& as () & {return reinterpret_cast<T&> (data_);} + template <typename T> T&& as () && {return move (as<T> ());} + template <typename T> const T& as () const& { return reinterpret_cast<const T&> (data_);} public: @@ -232,7 +232,7 @@ namespace build2 // specialization below). Types that don't fit will have to be handled // with an extra dynamic allocation. // - std::aligned_storage<sizeof (string) * 5>::type data_; + std::aligned_storage<sizeof (string) * 11>::type data_; // VC14 needs decltype. // |