@@ -39,7 +39,10 @@ unsafe impl<Opcode: CompileTimeOpcode> Ioctl for NoArg<Opcode> {
3939 type Output = ( ) ;
4040
4141 const IS_MUTATING : bool = false ;
42- const OPCODE : self :: Opcode = Opcode :: OPCODE ;
42+
43+ fn opcode ( & self ) -> self :: Opcode {
44+ Opcode :: OPCODE
45+ }
4346
4447 fn as_ptr ( & mut self ) -> * mut c:: c_void {
4548 core:: ptr:: null_mut ( )
@@ -89,7 +92,10 @@ unsafe impl<Opcode: CompileTimeOpcode, Output> Ioctl for Getter<Opcode, Output>
8992 type Output = Output ;
9093
9194 const IS_MUTATING : bool = true ;
92- const OPCODE : self :: Opcode = Opcode :: OPCODE ;
95+
96+ fn opcode ( & self ) -> self :: Opcode {
97+ Opcode :: OPCODE
98+ }
9399
94100 fn as_ptr ( & mut self ) -> * mut c:: c_void {
95101 self . output . as_mut_ptr ( ) . cast ( )
@@ -142,7 +148,10 @@ unsafe impl<Opcode: CompileTimeOpcode, Input> Ioctl for Setter<Opcode, Input> {
142148 type Output = ( ) ;
143149
144150 const IS_MUTATING : bool = false ;
145- const OPCODE : self :: Opcode = Opcode :: OPCODE ;
151+
152+ fn opcode ( & self ) -> self :: Opcode {
153+ Opcode :: OPCODE
154+ }
146155
147156 fn as_ptr ( & mut self ) -> * mut c:: c_void {
148157 addr_of_mut ! ( self . input) . cast :: < c:: c_void > ( )
@@ -186,7 +195,10 @@ unsafe impl<'a, Opcode: CompileTimeOpcode, T> Ioctl for Updater<'a, Opcode, T> {
186195 type Output = ( ) ;
187196
188197 const IS_MUTATING : bool = true ;
189- const OPCODE : self :: Opcode = Opcode :: OPCODE ;
198+
199+ fn opcode ( & self ) -> self :: Opcode {
200+ Opcode :: OPCODE
201+ }
190202
191203 fn as_ptr ( & mut self ) -> * mut c:: c_void {
192204 ( self . value as * mut T ) . cast ( )
@@ -244,7 +256,10 @@ unsafe impl<Opcode: CompileTimeOpcode> Ioctl for IntegerSetter<Opcode> {
244256 type Output = ( ) ;
245257
246258 const IS_MUTATING : bool = false ;
247- const OPCODE : self :: Opcode = Opcode :: OPCODE ;
259+
260+ fn opcode ( & self ) -> self :: Opcode {
261+ Opcode :: OPCODE
262+ }
248263
249264 fn as_ptr ( & mut self ) -> * mut c:: c_void {
250265 self . value
0 commit comments