src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp
Print this page
rev 6796 : [mq]: templateOopIterate
@@ -1286,13 +1286,12 @@
virtual void object_iterate(ObjectClosure* cl);
// Need to declare the full complement of closures, whether we'll
// override them or not, or get message from the compiler:
// oop_since_save_marks_iterate_nv hides virtual function...
- #define CMS_SINCE_SAVE_MARKS_DECL(OopClosureType, nv_suffix) \
- void oop_since_save_marks_iterate##nv_suffix(OopClosureType* cl);
- ALL_SINCE_SAVE_MARKS_CLOSURES(CMS_SINCE_SAVE_MARKS_DECL)
+ template <bool nv, typename OopClosureType>
+ void oop_since_save_marks_iterate(OopClosureType* cl);
// Smart allocation XXX -- move to CFLSpace?
void setNearLargestChunk();
bool isNearLargestChunk(HeapWord* addr);