< prev index next >

src/share/vm/gc/g1/g1ConcurrentMark.hpp

Print this page

        

@@ -37,16 +37,10 @@
 class G1ConcurrentMark;
 class ConcurrentGCTimer;
 class G1OldTracer;
 class G1SurvivorRegions;
 
-#ifdef _MSC_VER
-#pragma warning(push)
-// warning C4522: multiple assignment operators specified
-#pragma warning(disable:4522)
-#endif
-
 // This is a container class for either an oop or a continuation address for
 // mark stack entries. Both are pushed onto the mark stack.
 class G1TaskQueueEntry VALUE_OBJ_CLASS_SPEC {
 private:
   void* _holder;

@@ -62,13 +56,12 @@
   G1TaskQueueEntry() : _holder(NULL) { }
 
   static G1TaskQueueEntry from_slice(HeapWord* what) { return G1TaskQueueEntry(what); }
   static G1TaskQueueEntry from_oop(oop obj) { return G1TaskQueueEntry(obj); }
 
-  G1TaskQueueEntry& operator=(const G1TaskQueueEntry& t) {
+  void assign(const G1TaskQueueEntry& t) {
     _holder = t._holder;
-    return *this;
   }
 
   volatile G1TaskQueueEntry& operator=(const volatile G1TaskQueueEntry& t) volatile {
     _holder = t._holder;
     return *this;

@@ -87,14 +80,10 @@
   bool is_oop() const { return !is_array_slice(); }
   bool is_array_slice() const { return ((uintptr_t)_holder & ArraySliceBit) != 0; }
   bool is_null() const { return _holder == NULL; }
 };
 
-#ifdef _MSC_VER
-#pragma warning(pop)
-#endif
-
 typedef GenericTaskQueue<G1TaskQueueEntry, mtGC> G1CMTaskQueue;
 typedef GenericTaskQueueSet<G1CMTaskQueue, mtGC> G1CMTaskQueueSet;
 
 // Closure used by CM during concurrent reference discovery
 // and reference processing (during remarking) to determine
< prev index next >