comparison src/share/vm/memory/binaryTreeDictionary.hpp @ 6119:a297b0e14605

7172226: HotSpot fails to build with GCC 4.7 because of stricter c++ argument dependent lookup Summary: Add "using" keyword to import base class functions from FreeList<T> to fix template name lookup in gcc 4.7 Reviewed-by: brutisso, iveresov
author mgerdin
date Mon, 04 Jun 2012 09:21:53 +0200
parents f69a5d43dc19
children da91efe96a93
comparison
equal deleted inserted replaced
6115:6e2633440960 6119:a297b0e14605
58 protected: 58 protected:
59 TreeList<Chunk>* parent() const { return _parent; } 59 TreeList<Chunk>* parent() const { return _parent; }
60 TreeList<Chunk>* left() const { return _left; } 60 TreeList<Chunk>* left() const { return _left; }
61 TreeList<Chunk>* right() const { return _right; } 61 TreeList<Chunk>* right() const { return _right; }
62 62
63 // Wrapper on call to base class, to get the template to compile. 63 // Explicitly import these names into our namespace to fix name lookup with templates
64 Chunk* head() const { return FreeList<Chunk>::head(); } 64 using FreeList<Chunk>::head;
65 Chunk* tail() const { return FreeList<Chunk>::tail(); } 65 using FreeList<Chunk>::set_head;
66 void set_head(Chunk* head) { FreeList<Chunk>::set_head(head); } 66
67 void set_tail(Chunk* tail) { FreeList<Chunk>::set_tail(tail); } 67 using FreeList<Chunk>::tail;
68 68 using FreeList<Chunk>::set_tail;
69 size_t size() const { return FreeList<Chunk>::size(); } 69 using FreeList<Chunk>::link_tail;
70
71 using FreeList<Chunk>::increment_count;
72 NOT_PRODUCT(using FreeList<Chunk>::increment_returned_bytes_by;)
73 using FreeList<Chunk>::verify_chunk_in_free_list;
74 using FreeList<Chunk>::size;
70 75
71 // Accessors for links in tree. 76 // Accessors for links in tree.
72 77
73 void set_left(TreeList<Chunk>* tl) { 78 void set_left(TreeList<Chunk>* tl) {
74 _left = tl; 79 _left = tl;