diff --git a/vexcl/operations.hpp b/vexcl/operations.hpp index 916346ea6..d30bd4084 100644 --- a/vexcl/operations.hpp +++ b/vexcl/operations.hpp @@ -1878,25 +1878,25 @@ template std::deque cache_register::caches; struct kernel_cache { - std::map store; + typedef std::map store_type; + + store_type store; kernel_cache() { cache_register<>::add(this); } template - auto insert(T&& item) -> decltype( store.insert( std::forward(item) ) ) - { + std::pair insert(T&& item) { return store.insert(std::forward(item)); } - auto end() const -> decltype( store.end() ) { + store_type::const_iterator end() const { return store.end(); } template - auto find(T&& key) -> decltype( store.find( std::forward(key) ) ) - { + store_type::iterator find(T&& key) { return store.find( std::forward(key) ); }