For the _BitfieldRO and _BitfieldWO classes, make sure the undesired operator is...
authorGabe Black <gblack@eecs.umich.edu>
Mon, 19 Mar 2007 14:28:19 +0000 (14:28 +0000)
committerGabe Black <gblack@eecs.umich.edu>
Mon, 19 Mar 2007 14:28:19 +0000 (14:28 +0000)
--HG--
extra : convert_revision : b18d8e49547c2712ab255d048850c5231313b80a

src/base/bitfield.hh

index da7a21b8f067e96c11cd1e4579b9c5f0170605d6..408882a51d4a82845deeb7ea111eb4b0efb44919 100644 (file)
@@ -171,10 +171,14 @@ namespace BitfieldBackend
 
     //A class which specializes a given base so that it can only be read
     //from. This is accomplished by only passing through the conversion
-    //operator.
+    //operator and explicitly making sure the assignment operator is blocked.
     template<class Type, class Base>
     class _BitfieldRO : public Base
     {
+      private:
+        const Type
+        operator=(const Type & _data);
+
       public:
         operator const Type ()
         {
@@ -186,6 +190,9 @@ namespace BitfieldBackend
     template<class Type, class Base>
     class _BitfieldWO : public Base
     {
+      private:
+        operator const Type ();
+
       public:
         const Type operator=(const Type & _data)
         {