diff --git a/dtool/src/dtoolbase/dallocator.T b/dtool/src/dtoolbase/dallocator.T index cf69f02d34..a21730ae44 100644 --- a/dtool/src/dtoolbase/dallocator.T +++ b/dtool/src/dtoolbase/dallocator.T @@ -63,9 +63,9 @@ dallocator() throw() { } template -INLINE typename dallocator::pointer dallocator:: -allocate(typename dallocator::size_type n, allocator::const_pointer) { - return (typename dallocator::pointer)(*global_operator_new)(n * sizeof(Type)); +INLINE TYPENAME dallocator::pointer dallocator:: +allocate(TYPENAME dallocator::size_type n, allocator::const_pointer) { + return (TYPENAME dallocator::pointer)(*global_operator_new)(n * sizeof(Type)); } template diff --git a/dtool/src/dtoolbase/pallocator.T b/dtool/src/dtoolbase/pallocator.T index 69161ce8f2..6680fe6119 100644 --- a/dtool/src/dtoolbase/pallocator.T +++ b/dtool/src/dtoolbase/pallocator.T @@ -78,9 +78,9 @@ pallocator() throw() { } template -INLINE typename pallocator::pointer pallocator:: -allocate(typename pallocator::size_type n, typename allocator::const_pointer) { - return (typename pallocator::pointer)(*global_operator_new)(n * sizeof(Type)); +INLINE TYPENAME pallocator::pointer pallocator:: +allocate(TYPENAME pallocator::size_type n, TYPENAME allocator::const_pointer) { + return (TYPENAME pallocator::pointer)(*global_operator_new)(n * sizeof(Type)); } template diff --git a/panda/src/express/ordered_vector.I b/panda/src/express/ordered_vector.I index cf73e225fd..3df42a8081 100644 --- a/panda/src/express/ordered_vector.I +++ b/panda/src/express/ordered_vector.I @@ -72,7 +72,7 @@ INLINE ordered_vector:: // the ordered vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: begin() { return _vector.begin(); } @@ -84,7 +84,7 @@ begin() { // ordered vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: end() { return _vector.end(); } @@ -96,7 +96,7 @@ end() { // the ordered vector, when viewed in reverse order. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::REVERSE_ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::REVERSE_ITERATOR ordered_vector:: rbegin() { return _vector.rbegin(); } @@ -108,7 +108,7 @@ rbegin() { // ordered vector, when viewed in reverse order. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::REVERSE_ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::REVERSE_ITERATOR ordered_vector:: rend() { return _vector.rend(); } @@ -120,7 +120,7 @@ rend() { // the ordered vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: begin() const { return _vector.begin(); } @@ -132,7 +132,7 @@ begin() const { // ordered vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: end() const { return _vector.end(); } @@ -144,7 +144,7 @@ end() const { // the ordered vector, when viewed in reverse order. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_REVERSE_ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::CONST_REVERSE_ITERATOR ordered_vector:: rbegin() const { return _vector.rbegin(); } @@ -156,7 +156,7 @@ rbegin() const { // ordered vector, when viewed in reverse order. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_REVERSE_ITERATOR ordered_vector:: +INLINE TYPENAME ordered_vector::CONST_REVERSE_ITERATOR ordered_vector:: rend() const { return _vector.rend(); } @@ -167,8 +167,8 @@ rend() const { // Description: Returns the nth element. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::REFERENCE ordered_vector:: -operator [] (typename ordered_vector::SIZE_TYPE n) { +INLINE TYPENAME ordered_vector::REFERENCE ordered_vector:: +operator [] (TYPENAME ordered_vector::SIZE_TYPE n) { return _vector[n]; } @@ -178,8 +178,8 @@ operator [] (typename ordered_vector::SIZE_TYPE n) { // Description: Returns the nth element. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_REFERENCE ordered_vector:: -operator [] (typename ordered_vector::SIZE_TYPE n) const { +INLINE TYPENAME ordered_vector::CONST_REFERENCE ordered_vector:: +operator [] (TYPENAME ordered_vector::SIZE_TYPE n) const { return _vector[n]; } @@ -189,7 +189,7 @@ operator [] (typename ordered_vector::SIZE_TYPE n) const { // Description: Returns the number of elements in the ordered vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::SIZE_TYPE ordered_vector:: +INLINE TYPENAME ordered_vector::SIZE_TYPE ordered_vector:: size() const { return _vector.size(); } @@ -201,7 +201,7 @@ size() const { // possibly be stored in an ordered vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::SIZE_TYPE ordered_vector:: +INLINE TYPENAME ordered_vector::SIZE_TYPE ordered_vector:: max_size() const { return _vector.max_size(); } @@ -309,8 +309,8 @@ operator >= (const ordered_vector &other) const { // the insert operation has taken place. //////////////////////////////////////////////////////////////////// template -INLINE typename pair::ITERATOR, bool> ordered_vector:: -insert_unique(const typename ordered_vector::VALUE_TYPE &key) { +INLINE TYPENAME pair::ITERATOR, bool> ordered_vector:: +insert_unique(const TYPENAME ordered_vector::VALUE_TYPE &key) { ITERATOR position = find_insert_position(begin(), end(), key); #ifdef NDEBUG pair bogus_result(end(), false); @@ -341,8 +341,8 @@ insert_unique(const typename ordered_vector::VALUE_TYPE &key) { // element. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -insert_nonunique(const typename ordered_vector::VALUE_TYPE &key) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +insert_nonunique(const TYPENAME ordered_vector::VALUE_TYPE &key) { ITERATOR position = find_insert_position(begin(), end(), key); nassertr(position >= begin() && position <= end(), end()); @@ -358,8 +358,8 @@ insert_nonunique(const typename ordered_vector::VALUE_TYPE &key) { // and returns the next sequential iterator. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -erase(typename ordered_vector::ITERATOR position) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +erase(TYPENAME ordered_vector::ITERATOR position) { SIZE_TYPE count = position - begin(); _vector.erase(position); return begin() + count; @@ -372,8 +372,8 @@ erase(typename ordered_vector::ITERATOR position) { // returns the number of elements removed. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::SIZE_TYPE ordered_vector:: -erase(const typename ordered_vector::KEY_TYPE &key) { +INLINE TYPENAME ordered_vector::SIZE_TYPE ordered_vector:: +erase(const TYPENAME ordered_vector::KEY_TYPE &key) { pair result = equal_range(key); SIZE_TYPE count = result.second - result.first; erase(result.first, result.second); @@ -388,8 +388,8 @@ erase(const typename ordered_vector::KEY_TYPE &key) { //////////////////////////////////////////////////////////////////// template INLINE void ordered_vector:: -erase(typename ordered_vector::ITERATOR first, - typename ordered_vector::ITERATOR last) { +erase(TYPENAME ordered_vector::ITERATOR first, + TYPENAME ordered_vector::ITERATOR last) { _vector.erase(first, last); } @@ -413,8 +413,8 @@ clear() { // key, the particular iterator returned is not defined. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -find(const typename ordered_vector::KEY_TYPE &key) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +find(const TYPENAME ordered_vector::KEY_TYPE &key) { return nci(r_find(begin(), end(), end(), key)); } @@ -427,8 +427,8 @@ find(const typename ordered_vector::KEY_TYPE &key) { // key, the particular iterator returned is not defined. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_ITERATOR ordered_vector:: -find(const typename ordered_vector::KEY_TYPE &key) const { +INLINE TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +find(const TYPENAME ordered_vector::KEY_TYPE &key) const { return r_find(begin(), end(), end(), key); } @@ -449,8 +449,8 @@ find(const typename ordered_vector::KEY_TYPE &key) const { // !Compare(b, a), but not necessarily the converse. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -find_particular(const typename ordered_vector::KEY_TYPE &key) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +find_particular(const TYPENAME ordered_vector::KEY_TYPE &key) { return nci(r_find_particular(begin(), end(), end(), key)); } @@ -468,8 +468,8 @@ find_particular(const typename ordered_vector::KEY_TYPE &key) { // particular iterator returned is not defined./ //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_ITERATOR ordered_vector:: -find_particular(const typename ordered_vector::KEY_TYPE &key) const { +INLINE TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +find_particular(const TYPENAME ordered_vector::KEY_TYPE &key) const { return r_find_particular(begin(), end(), end(), key); } @@ -480,7 +480,7 @@ find_particular(const typename ordered_vector::KEY_TYPE &key) cons // to the key that are in the vector. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::SIZE_TYPE ordered_vector:: +INLINE TYPENAME ordered_vector::SIZE_TYPE ordered_vector:: count(const key_type &key) const { return r_count(begin(), end(), key); } @@ -492,8 +492,8 @@ count(const key_type &key) const { // than key, or end() if all elements are less than key. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -lower_bound(const typename ordered_vector::KEY_TYPE &key) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +lower_bound(const TYPENAME ordered_vector::KEY_TYPE &key) { return nci(r_lower_bound(begin(), end(), key)); } @@ -504,8 +504,8 @@ lower_bound(const typename ordered_vector::KEY_TYPE &key) { // than key, or end() if all elements are less than key. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_ITERATOR ordered_vector:: -lower_bound(const typename ordered_vector::KEY_TYPE &key) const { +INLINE TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +lower_bound(const TYPENAME ordered_vector::KEY_TYPE &key) const { return r_lower_bound(begin(), end(), key); } @@ -517,8 +517,8 @@ lower_bound(const typename ordered_vector::KEY_TYPE &key) const { // key. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -upper_bound(const typename ordered_vector::KEY_TYPE &key) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +upper_bound(const TYPENAME ordered_vector::KEY_TYPE &key) { return nci(r_upper_bound(begin(), end(), key)); } @@ -530,8 +530,8 @@ upper_bound(const typename ordered_vector::KEY_TYPE &key) { // key. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::CONST_ITERATOR ordered_vector:: -upper_bound(const typename ordered_vector::KEY_TYPE &key) const { +INLINE TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +upper_bound(const TYPENAME ordered_vector::KEY_TYPE &key) const { return r_upper_bound(begin(), end(), key); } @@ -541,11 +541,11 @@ upper_bound(const typename ordered_vector::KEY_TYPE &key) const { // Description: Returns the pair (lower_bound(key), upper_bound(key)). //////////////////////////////////////////////////////////////////// template -INLINE pair::ITERATOR, typename ordered_vector::ITERATOR> ordered_vector:: -equal_range(const typename ordered_vector::KEY_TYPE &key) { - pair::CONST_ITERATOR, typename ordered_vector::CONST_ITERATOR> result; +INLINE pair::ITERATOR, TYPENAME ordered_vector::ITERATOR> ordered_vector:: +equal_range(const TYPENAME ordered_vector::KEY_TYPE &key) { + pair::CONST_ITERATOR, TYPENAME ordered_vector::CONST_ITERATOR> result; result = r_equal_range(begin(), end(), key); - return pair::ITERATOR, typename ordered_vector::ITERATOR>(nci(result.first), nci(result.second)); + return pair::ITERATOR, TYPENAME ordered_vector::ITERATOR>(nci(result.first), nci(result.second)); } //////////////////////////////////////////////////////////////////// @@ -554,8 +554,8 @@ equal_range(const typename ordered_vector::KEY_TYPE &key) { // Description: Returns the pair (lower_bound(key), upper_bound(key)). //////////////////////////////////////////////////////////////////// template -INLINE pair::CONST_ITERATOR, typename ordered_vector::CONST_ITERATOR> ordered_vector:: -equal_range(const typename ordered_vector::KEY_TYPE &key) const { +INLINE pair::CONST_ITERATOR, TYPENAME ordered_vector::CONST_ITERATOR> ordered_vector:: +equal_range(const TYPENAME ordered_vector::KEY_TYPE &key) const { return r_equal_range(begin(), end(), key); } @@ -580,7 +580,7 @@ swap(ordered_vector ©) { //////////////////////////////////////////////////////////////////// template INLINE void ordered_vector:: -reserve(typename ordered_vector::SIZE_TYPE n) { +reserve(TYPENAME ordered_vector::SIZE_TYPE n) { _vector.reserve(n); } @@ -642,8 +642,8 @@ push_back(const value_type &key) { // some of these methods. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -nci(typename ordered_vector::CONST_ITERATOR i) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +nci(TYPENAME ordered_vector::CONST_ITERATOR i) { return begin() + (i - begin()); } @@ -655,10 +655,10 @@ nci(typename ordered_vector::CONST_ITERATOR i) { // corresponding iterator. //////////////////////////////////////////////////////////////////// template -INLINE typename ordered_vector::ITERATOR ordered_vector:: -find_insert_position(typename ordered_vector::ITERATOR first, - typename ordered_vector::ITERATOR last, - const typename ordered_vector::KEY_TYPE &key) { +INLINE TYPENAME ordered_vector::ITERATOR ordered_vector:: +find_insert_position(TYPENAME ordered_vector::ITERATOR first, + TYPENAME ordered_vector::ITERATOR last, + const TYPENAME ordered_vector::KEY_TYPE &key) { ITERATOR result = r_find_insert_position(first, last, key); return result; } @@ -705,9 +705,9 @@ operator = (const ov_set ©) { // Description: Maps to insert_unique(). //////////////////////////////////////////////////////////////////// template -typename ov_set::ITERATOR ov_set:: -insert(typename ov_set::ITERATOR position, - const typename ov_set::VALUE_TYPE &key) { +TYPENAME ov_set::ITERATOR ov_set:: +insert(TYPENAME ov_set::ITERATOR position, + const TYPENAME ov_set::VALUE_TYPE &key) { return ordered_vector::insert_unique(position, key); } @@ -717,8 +717,8 @@ insert(typename ov_set::ITERATOR position, // Description: Maps to insert_unique(). //////////////////////////////////////////////////////////////////// template -INLINE pair::ITERATOR, bool> ov_set:: -insert(const typename ov_set::VALUE_TYPE &key) { +INLINE pair::ITERATOR, bool> ov_set:: +insert(const TYPENAME ov_set::VALUE_TYPE &key) { return ordered_vector::insert_unique(key); } @@ -786,9 +786,9 @@ operator = (const ov_multiset ©) { // Description: Maps to insert_nonunique(). //////////////////////////////////////////////////////////////////// template -typename ov_multiset::ITERATOR ov_multiset:: -insert(typename ov_multiset::ITERATOR position, - const typename ov_multiset::VALUE_TYPE &key) { +TYPENAME ov_multiset::ITERATOR ov_multiset:: +insert(TYPENAME ov_multiset::ITERATOR position, + const TYPENAME ov_multiset::VALUE_TYPE &key) { return ordered_vector::insert_nonunique(position, key); } @@ -798,8 +798,8 @@ insert(typename ov_multiset::ITERATOR position, // Description: Maps to insert_nonunique(). //////////////////////////////////////////////////////////////////// template -INLINE typename ov_multiset::ITERATOR ov_multiset:: -insert(const typename ov_multiset::VALUE_TYPE &key) { +INLINE TYPENAME ov_multiset::ITERATOR ov_multiset:: +insert(const TYPENAME ov_multiset::VALUE_TYPE &key) { return ordered_vector::insert_nonunique(key); } diff --git a/panda/src/express/ordered_vector.T b/panda/src/express/ordered_vector.T index fcaa8e102a..59245561b4 100644 --- a/panda/src/express/ordered_vector.T +++ b/panda/src/express/ordered_vector.T @@ -32,9 +32,9 @@ // referencing the original value is returned. //////////////////////////////////////////////////////////////////// template -typename ordered_vector::ITERATOR ordered_vector:: -insert_unique(typename ordered_vector::ITERATOR position, - const typename ordered_vector::VALUE_TYPE &key) { +TYPENAME ordered_vector::ITERATOR ordered_vector:: +insert_unique(TYPENAME ordered_vector::ITERATOR position, + const TYPENAME ordered_vector::VALUE_TYPE &key) { if (position != end()) { // If we're not inserting at the end, the element we're // inserting before should not lexicographically precede this one. @@ -78,9 +78,9 @@ insert_unique(typename ordered_vector::ITERATOR position, // same key to be inserted. //////////////////////////////////////////////////////////////////// template -typename ordered_vector::ITERATOR ordered_vector:: -insert_nonunique(typename ordered_vector::ITERATOR position, - const typename ordered_vector::VALUE_TYPE &key) { +TYPENAME ordered_vector::ITERATOR ordered_vector:: +insert_nonunique(TYPENAME ordered_vector::ITERATOR position, + const TYPENAME ordered_vector::VALUE_TYPE &key) { if (position != end()) { // If we're not inserting at the end, the element we're // inserting before should not lexicographically precede this one. @@ -162,10 +162,10 @@ verify_list_nonunique() const { // find_insert_position(). //////////////////////////////////////////////////////////////////// template -typename ordered_vector::ITERATOR ordered_vector:: -r_find_insert_position(typename ordered_vector::ITERATOR first, - typename ordered_vector::ITERATOR last, - const typename ordered_vector::KEY_TYPE &key) { +TYPENAME ordered_vector::ITERATOR ordered_vector:: +r_find_insert_position(TYPENAME ordered_vector::ITERATOR first, + TYPENAME ordered_vector::ITERATOR last, + const TYPENAME ordered_vector::KEY_TYPE &key) { if (first == last) { // The list is empty; the insert position is the last of the list. return last; @@ -190,11 +190,11 @@ r_find_insert_position(typename ordered_vector::ITERATOR first, // Description: The recursive implementation of find(). //////////////////////////////////////////////////////////////////// template -typename ordered_vector::CONST_ITERATOR ordered_vector:: -r_find(typename ordered_vector::CONST_ITERATOR first, - typename ordered_vector::CONST_ITERATOR last, - typename ordered_vector::CONST_ITERATOR not_found, - const typename ordered_vector::KEY_TYPE &key) const { +TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +r_find(TYPENAME ordered_vector::CONST_ITERATOR first, + TYPENAME ordered_vector::CONST_ITERATOR last, + TYPENAME ordered_vector::CONST_ITERATOR not_found, + const TYPENAME ordered_vector::KEY_TYPE &key) const { if (first == last) { // The list is empty; the key is not on the list. return not_found; @@ -223,11 +223,11 @@ r_find(typename ordered_vector::CONST_ITERATOR first, // Description: The recursive implementation of find_particular(). //////////////////////////////////////////////////////////////////// template -typename ordered_vector::CONST_ITERATOR ordered_vector:: -r_find_particular(typename ordered_vector::CONST_ITERATOR first, - typename ordered_vector::CONST_ITERATOR last, - typename ordered_vector::CONST_ITERATOR not_found, - const typename ordered_vector::KEY_TYPE &key) const { +TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +r_find_particular(TYPENAME ordered_vector::CONST_ITERATOR first, + TYPENAME ordered_vector::CONST_ITERATOR last, + TYPENAME ordered_vector::CONST_ITERATOR not_found, + const TYPENAME ordered_vector::KEY_TYPE &key) const { if (first == last) { // The list is empty; the key is not on the list. return not_found; @@ -276,11 +276,11 @@ r_find_particular(typename ordered_vector::CONST_ITERATOR first, // Description: The recursive implementation of count(). //////////////////////////////////////////////////////////////////// template -typename ordered_vector::SIZE_TYPE ordered_vector:: -r_count(typename ordered_vector::CONST_ITERATOR first, - typename ordered_vector::CONST_ITERATOR last, - const typename ordered_vector::KEY_TYPE &key) const { - typedef pair::CONST_ITERATOR, typename ordered_vector::CONST_ITERATOR> pair_type; +TYPENAME ordered_vector::SIZE_TYPE ordered_vector:: +r_count(TYPENAME ordered_vector::CONST_ITERATOR first, + TYPENAME ordered_vector::CONST_ITERATOR last, + const TYPENAME ordered_vector::KEY_TYPE &key) const { + typedef pair::CONST_ITERATOR, TYPENAME ordered_vector::CONST_ITERATOR> pair_type; if (first == last) { // The list is empty; the key is not on the list. @@ -312,10 +312,10 @@ r_count(typename ordered_vector::CONST_ITERATOR first, // Description: The recursive implementation of lower_bound(). //////////////////////////////////////////////////////////////////// template -typename ordered_vector::CONST_ITERATOR ordered_vector:: -r_lower_bound(typename ordered_vector::CONST_ITERATOR first, - typename ordered_vector::CONST_ITERATOR last, - const typename ordered_vector::KEY_TYPE &key) const { +TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +r_lower_bound(TYPENAME ordered_vector::CONST_ITERATOR first, + TYPENAME ordered_vector::CONST_ITERATOR last, + const TYPENAME ordered_vector::KEY_TYPE &key) const { if (first == last) { // The list is empty; the key is not on the list. return last; @@ -345,10 +345,10 @@ r_lower_bound(typename ordered_vector::CONST_ITERATOR first, // Description: The recursive implementation of upper_bound(). //////////////////////////////////////////////////////////////////// template -typename ordered_vector::CONST_ITERATOR ordered_vector:: -r_upper_bound(typename ordered_vector::CONST_ITERATOR first, - typename ordered_vector::CONST_ITERATOR last, - const typename ordered_vector::KEY_TYPE &key) const { +TYPENAME ordered_vector::CONST_ITERATOR ordered_vector:: +r_upper_bound(TYPENAME ordered_vector::CONST_ITERATOR first, + TYPENAME ordered_vector::CONST_ITERATOR last, + const TYPENAME ordered_vector::KEY_TYPE &key) const { if (first == last) { // The list is empty; the key is not on the list. return last; @@ -378,11 +378,11 @@ r_upper_bound(typename ordered_vector::CONST_ITERATOR first, // Description: The recursive implementation of equal_range(). //////////////////////////////////////////////////////////////////// template -pair::CONST_ITERATOR, typename ordered_vector::CONST_ITERATOR> ordered_vector:: -r_equal_range(typename ordered_vector::CONST_ITERATOR first, - typename ordered_vector::CONST_ITERATOR last, - const typename ordered_vector::KEY_TYPE &key) const { - typedef pair::CONST_ITERATOR, typename ordered_vector::CONST_ITERATOR> pair_type; +pair::CONST_ITERATOR, TYPENAME ordered_vector::CONST_ITERATOR> ordered_vector:: +r_equal_range(TYPENAME ordered_vector::CONST_ITERATOR first, + TYPENAME ordered_vector::CONST_ITERATOR last, + const TYPENAME ordered_vector::KEY_TYPE &key) const { + typedef pair::CONST_ITERATOR, TYPENAME ordered_vector::CONST_ITERATOR> pair_type; if (first == last) { // The list is empty; the key is not on the list. diff --git a/panda/src/express/ordered_vector.h b/panda/src/express/ordered_vector.h index 25a0b43504..709bcd71e9 100644 --- a/panda/src/express/ordered_vector.h +++ b/panda/src/express/ordered_vector.h @@ -105,13 +105,13 @@ public: // Be careful when using the non-const iterators that you do not // disturb the sorted order of the vector, or that if you do, you // call sort() when you are done. - typedef typename Vector::iterator ITERATOR; - typedef typename Vector::const_iterator CONST_ITERATOR; - typedef typename Vector::reverse_iterator REVERSE_ITERATOR; - typedef typename Vector::const_reverse_iterator CONST_REVERSE_ITERATOR; + typedef TYPENAME Vector::iterator ITERATOR; + typedef TYPENAME Vector::const_iterator CONST_ITERATOR; + typedef TYPENAME Vector::reverse_iterator REVERSE_ITERATOR; + typedef TYPENAME Vector::const_reverse_iterator CONST_REVERSE_ITERATOR; - typedef typename Vector::difference_type DIFFERENCE_TYPE; - typedef typename Vector::size_type SIZE_TYPE; + typedef TYPENAME Vector::difference_type DIFFERENCE_TYPE; + typedef TYPENAME Vector::size_type SIZE_TYPE; // Since the #define symbols do not actually expand to the correct // names, we have to re-typedef them so callers can reference them @@ -255,8 +255,8 @@ private: template > class ov_set : public ordered_vector { public: - typedef typename ordered_vector::ITERATOR ITERATOR; - typedef typename ordered_vector::VALUE_TYPE VALUE_TYPE; + typedef TYPENAME ordered_vector::ITERATOR ITERATOR; + typedef TYPENAME ordered_vector::VALUE_TYPE VALUE_TYPE; INLINE ov_set(const Compare &compare = Compare()); INLINE ov_set(const ov_set ©); @@ -278,8 +278,8 @@ public: template > class ov_multiset : public ordered_vector { public: - typedef typename ordered_vector::ITERATOR ITERATOR; - typedef typename ordered_vector::VALUE_TYPE VALUE_TYPE; + typedef TYPENAME ordered_vector::ITERATOR ITERATOR; + typedef TYPENAME ordered_vector::VALUE_TYPE VALUE_TYPE; INLINE ov_multiset(const Compare &compare = Compare()); INLINE ov_multiset(const ov_multiset ©); diff --git a/panda/src/express/pointerTo.I b/panda/src/express/pointerTo.I index 79023f51f8..dddcdc97cf 100644 --- a/panda/src/express/pointerTo.I +++ b/panda/src/express/pointerTo.I @@ -315,7 +315,7 @@ PointerTo(const PointerTo ©) : // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerTo::To &PointerTo:: +INLINE TYPENAME PointerTo::To &PointerTo:: operator *() const { return *_ptr; } @@ -326,7 +326,7 @@ operator *() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerTo::To *PointerTo:: +INLINE TYPENAME PointerTo::To *PointerTo:: operator -> () const { return _ptr; } @@ -343,7 +343,7 @@ operator -> () const { //////////////////////////////////////////////////////////////////// template INLINE PointerTo:: -operator typename PointerToBase::To *() const { +operator TYPENAME PointerToBase::To *() const { return _ptr; } @@ -355,7 +355,7 @@ operator typename PointerToBase::To *() const { // for implicit upcasts. //////////////////////////////////////////////////////////////////// template -INLINE typename PointerTo::To *PointerTo:: +INLINE TYPENAME PointerTo::To *PointerTo:: p() const { return _ptr; } @@ -366,7 +366,7 @@ p() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerTo &PointerTo:: +INLINE TYPENAME PointerTo &PointerTo:: operator = (To *ptr) { reassign(ptr); return *this; @@ -378,7 +378,7 @@ operator = (To *ptr) { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerTo &PointerTo:: +INLINE TYPENAME PointerTo &PointerTo:: operator = (const PointerTo ©) { reassign((const PointerToBase &)copy); return *this; @@ -426,7 +426,7 @@ ConstPointerTo(const ConstPointerTo ©) : // Description: //////////////////////////////////////////////////////////////////// template -INLINE const typename ConstPointerTo::To &ConstPointerTo:: +INLINE const TYPENAME ConstPointerTo::To &ConstPointerTo:: operator *() const { return *_ptr; } @@ -437,7 +437,7 @@ operator *() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE const typename ConstPointerTo::To *ConstPointerTo:: +INLINE const TYPENAME ConstPointerTo::To *ConstPointerTo:: operator -> () const { return _ptr; } @@ -455,8 +455,8 @@ operator -> () const { #ifndef CPPPARSER template -INLINE typename ConstPointerTo:: -operator const typename PointerToBase::To *() const { +INLINE TYPENAME ConstPointerTo:: +operator const TYPENAME PointerToBase::To *() const { return _ptr; } #else @@ -476,7 +476,7 @@ operator const PointerToBase::To *() const { // for implicit upcasts. //////////////////////////////////////////////////////////////////// template -INLINE const typename ConstPointerTo::To *ConstPointerTo:: +INLINE const TYPENAME ConstPointerTo::To *ConstPointerTo:: p() const { return _ptr; } diff --git a/panda/src/express/pointerToArray.I b/panda/src/express/pointerToArray.I index af6f39f070..8df22fa8a1 100644 --- a/panda/src/express/pointerToArray.I +++ b/panda/src/express/pointerToArray.I @@ -75,7 +75,7 @@ PointerToArray(const PointerToArray ©) : // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::iterator PointerToArray:: +INLINE TYPENAME PointerToArray::iterator PointerToArray:: begin() const { if (_ptr == NULL) { return _empty_array.begin(); @@ -89,7 +89,7 @@ begin() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::iterator PointerToArray:: +INLINE TYPENAME PointerToArray::iterator PointerToArray:: end() const { if (_ptr == NULL) { return _empty_array.begin(); @@ -103,7 +103,7 @@ end() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::reverse_iterator PointerToArray:: +INLINE TYPENAME PointerToArray::reverse_iterator PointerToArray:: rbegin() const { if (_ptr == NULL) { return _empty_array.rbegin(); @@ -117,7 +117,7 @@ rbegin() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::reverse_iterator PointerToArray:: +INLINE TYPENAME PointerToArray::reverse_iterator PointerToArray:: rend() const { if (_ptr == NULL) { return _empty_array.rbegin(); @@ -131,7 +131,7 @@ rend() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::size_type PointerToArray:: +INLINE TYPENAME PointerToArray::size_type PointerToArray:: size() const { return (_ptr == NULL) ? 0 : _ptr->size(); } @@ -142,7 +142,7 @@ size() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::size_type PointerToArray:: +INLINE TYPENAME PointerToArray::size_type PointerToArray:: max_size() const { nassertd(_ptr != NULL) { ((PointerToArray *)this)->reassign(new RefCountObj >); @@ -168,7 +168,7 @@ empty() const { //////////////////////////////////////////////////////////////////// template INLINE void PointerToArray:: -reserve(typename PointerToArray::size_type n) { +reserve(TYPENAME PointerToArray::size_type n) { if (_ptr == NULL) { reassign(new RefCountObj >); } @@ -181,7 +181,7 @@ reserve(typename PointerToArray::size_type n) { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::size_type PointerToArray:: +INLINE TYPENAME PointerToArray::size_type PointerToArray:: capacity() const { nassertr(_ptr != NULL, 0); return _ptr->capacity(); @@ -193,7 +193,7 @@ capacity() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::reference PointerToArray:: +INLINE TYPENAME PointerToArray::reference PointerToArray:: front() const { nassertd(_ptr != NULL) { ((PointerToArray *)this)->reassign(new RefCountObj >); @@ -210,7 +210,7 @@ front() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::reference PointerToArray:: +INLINE TYPENAME PointerToArray::reference PointerToArray:: back() const { nassertd(_ptr != NULL) { ((PointerToArray *)this)->reassign(new RefCountObj >); @@ -227,7 +227,7 @@ back() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename PointerToArray::iterator PointerToArray:: +INLINE TYPENAME PointerToArray::iterator PointerToArray:: insert(iterator position, const Element &x) const { nassertr(_ptr != NULL, position); nassertr(position >= _ptr->begin() && @@ -506,7 +506,7 @@ ConstPointerToArray(const ConstPointerToArray ©) : // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::iterator ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::iterator ConstPointerToArray:: begin() const { if (_ptr == NULL) { return _empty_array.begin(); @@ -520,7 +520,7 @@ begin() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::iterator ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::iterator ConstPointerToArray:: end() const { if (_ptr == NULL) { return _empty_array.begin(); @@ -534,7 +534,7 @@ end() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::reverse_iterator ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::reverse_iterator ConstPointerToArray:: rbegin() const { if (_ptr == NULL) { return _empty_array.rbegin(); @@ -548,7 +548,7 @@ rbegin() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::reverse_iterator ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::reverse_iterator ConstPointerToArray:: rend() const { if (_ptr == NULL) { return _empty_array.rbegin(); @@ -562,7 +562,7 @@ rend() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::size_type ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::size_type ConstPointerToArray:: size() const { return (_ptr == NULL) ? 0 : _ptr->size(); } @@ -573,7 +573,7 @@ size() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::size_type ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::size_type ConstPointerToArray:: max_size() const { nassertd(_ptr != NULL) { ((ConstPointerToArray *)this)->reassign(new RefCountObj >); @@ -598,7 +598,7 @@ empty() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::size_type ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::size_type ConstPointerToArray:: capacity() const { nassertd(_ptr != NULL) { ((ConstPointerToArray *)this)->reassign(new RefCountObj >); @@ -613,7 +613,7 @@ capacity() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::reference ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::reference ConstPointerToArray:: operator[](size_type n) const { nassertd(_ptr != NULL) { ((ConstPointerToArray *)this)->reassign(new RefCountObj >); @@ -632,7 +632,7 @@ operator[](size_type n) const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::reference ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::reference ConstPointerToArray:: front() const { nassertd(_ptr != NULL) { ((ConstPointerToArray *)this)->reassign(new RefCountObj >); @@ -649,7 +649,7 @@ front() const { // Description: //////////////////////////////////////////////////////////////////// template -INLINE typename ConstPointerToArray::reference ConstPointerToArray:: +INLINE TYPENAME ConstPointerToArray::reference ConstPointerToArray:: back() const { nassertd(_ptr != NULL) { ((ConstPointerToArray *)this)->reassign(new RefCountObj >); diff --git a/panda/src/express/pointerToArray.h b/panda/src/express/pointerToArray.h index 3f04b13cc4..3885956a93 100644 --- a/panda/src/express/pointerToArray.h +++ b/panda/src/express/pointerToArray.h @@ -91,15 +91,15 @@ template class PointerToArray : public PointerToBase > > { public: - typedef typename pvector::value_type value_type; - typedef typename pvector::reference reference; - typedef typename pvector::const_reference const_reference; - typedef typename pvector::iterator iterator; - typedef typename pvector::const_iterator const_iterator; - typedef typename pvector::reverse_iterator reverse_iterator; - typedef typename pvector::const_reverse_iterator const_reverse_iterator; - typedef typename pvector::difference_type difference_type; - typedef typename pvector::size_type size_type; + typedef TYPENAME pvector::value_type value_type; + typedef TYPENAME pvector::reference reference; + typedef TYPENAME pvector::const_reference const_reference; + typedef TYPENAME pvector::iterator iterator; + typedef TYPENAME pvector::const_iterator const_iterator; + typedef TYPENAME pvector::reverse_iterator reverse_iterator; + typedef TYPENAME pvector::const_reverse_iterator const_reverse_iterator; + typedef TYPENAME pvector::difference_type difference_type; + typedef TYPENAME pvector::size_type size_type; PUBLISHED: INLINE PointerToArray(); @@ -116,8 +116,8 @@ public: INLINE iterator begin() const; INLINE iterator end() const; - INLINE typename PointerToArray::reverse_iterator rbegin() const; - INLINE typename PointerToArray::reverse_iterator rend() const; + INLINE TYPENAME PointerToArray::reverse_iterator rbegin() const; + INLINE TYPENAME PointerToArray::reverse_iterator rend() const; // Equality and comparison operators are pointerwise for // PointerToArrays, not elementwise as in vector. @@ -196,20 +196,20 @@ private: template class ConstPointerToArray : public PointerToBase > > { public: - typedef typename pvector::value_type value_type; - typedef typename pvector::const_reference reference; - typedef typename pvector::const_reference const_reference; - typedef typename pvector::const_iterator iterator; - typedef typename pvector::const_iterator const_iterator; + typedef TYPENAME pvector::value_type value_type; + typedef TYPENAME pvector::const_reference reference; + typedef TYPENAME pvector::const_reference const_reference; + typedef TYPENAME pvector::const_iterator iterator; + typedef TYPENAME pvector::const_iterator const_iterator; #ifdef WIN32_VC // VC++ seems to break the const_reverse_iterator definition somehow. - typedef typename pvector::reverse_iterator reverse_iterator; + typedef TYPENAME pvector::reverse_iterator reverse_iterator; #else - typedef typename pvector::const_reverse_iterator reverse_iterator; + typedef TYPENAME pvector::const_reverse_iterator reverse_iterator; #endif - typedef typename pvector::const_reverse_iterator const_reverse_iterator; - typedef typename pvector::difference_type difference_type; - typedef typename pvector::size_type size_type; + typedef TYPENAME pvector::const_reverse_iterator const_reverse_iterator; + typedef TYPENAME pvector::difference_type difference_type; + typedef TYPENAME pvector::size_type size_type; INLINE ConstPointerToArray(); INLINE ConstPointerToArray(const PointerToArray ©); @@ -219,8 +219,8 @@ public: INLINE iterator begin() const; INLINE iterator end() const; - INLINE typename ConstPointerToArray::reverse_iterator rbegin() const; - INLINE typename ConstPointerToArray::reverse_iterator rend() const; + INLINE TYPENAME ConstPointerToArray::reverse_iterator rbegin() const; + INLINE TYPENAME ConstPointerToArray::reverse_iterator rend() const; // Equality and comparison operators are pointerwise for // PointerToArrays, not elementwise as in vector.