Add missing typename to unbreak the MSVC 2012 build.

llvm-svn: 175129
This commit is contained in:
Francois Pichet 2013-02-14 03:24:14 +00:00
parent 06417743cf
commit f7ce882297
2 changed files with 10 additions and 10 deletions

View File

@ -211,13 +211,13 @@ public:
friend class ImmutableMap; friend class ImmutableMap;
public: public:
typedef ImmutableMap<KeyT,ValT,ValInfo>::value_type value_type; typedef typename ImmutableMap<KeyT,ValT,ValInfo>::value_type value_type;
typedef ImmutableMap<KeyT,ValT,ValInfo>::value_type_ref reference; typedef typename ImmutableMap<KeyT,ValT,ValInfo>::value_type_ref reference;
typedef iterator::value_type *pointer; typedef typename iterator::value_type *pointer;
typedef std::bidirectional_iterator_tag iterator_category; typedef std::bidirectional_iterator_tag iterator_category;
iterator::reference operator*() const { return itr->getValue(); } typename iterator::reference operator*() const { return itr->getValue(); }
iterator::pointer operator->() const { return &itr->getValue(); } typename iterator::pointer operator->() const { return &itr->getValue(); }
key_type_ref getKey() const { return itr->getValue().first; } key_type_ref getKey() const { return itr->getValue().first; }
data_type_ref getData() const { return itr->getValue().second; } data_type_ref getData() const { return itr->getValue().second; }

View File

@ -1060,13 +1060,13 @@ public:
friend class ImmutableSet<ValT,ValInfo>; friend class ImmutableSet<ValT,ValInfo>;
public: public:
typedef ImmutableSet<ValT,ValInfo>::value_type value_type; typedef typename ImmutableSet<ValT,ValInfo>::value_type value_type;
typedef ImmutableSet<ValT,ValInfo>::value_type_ref reference; typedef typename ImmutableSet<ValT,ValInfo>::value_type_ref reference;
typedef iterator::value_type *pointer; typedef typename iterator::value_type *pointer;
typedef std::bidirectional_iterator_tag iterator_category; typedef std::bidirectional_iterator_tag iterator_category;
iterator::reference operator*() const { return itr->getValue(); } typename iterator::reference operator*() const { return itr->getValue(); }
iterator::pointer operator->() const { return &(operator*()); } typename iterator::pointer operator->() const { return &(operator*()); }
iterator& operator++() { ++itr; return *this; } iterator& operator++() { ++itr; return *this; }
iterator operator++(int) { iterator tmp(*this); ++itr; return tmp; } iterator operator++(int) { iterator tmp(*this); ++itr; return tmp; }