1
- use std:: ffi:: { CStr , CString } ;
1
+ use std:: ffi:: { c_void , CStr , CString } ;
2
2
use std:: marker:: PhantomData ;
3
3
use std:: mem;
4
4
use std:: os:: raw:: { c_int, c_ulong} ;
@@ -279,8 +279,8 @@ impl<'ctx> Context<'ctx> {
279
279
let file_ref = file. as_ref ( ) ;
280
280
let cstr = CString :: new ( file_ref) . unwrap ( ) ;
281
281
gccjit_sys:: gcc_jit_context_compile_to_file ( self . ptr ,
282
- mem:: transmute ( kind) ,
283
- cstr. as_ptr ( ) ) ;
282
+ mem:: transmute :: < OutputKind , gccjit_sys :: gcc_jit_output_kind > ( kind) ,
283
+ cstr. as_ptr ( ) ) ;
284
284
}
285
285
}
286
286
@@ -352,7 +352,7 @@ impl<'ctx> Context<'ctx> {
352
352
let ptr = gccjit_sys:: gcc_jit_context_new_global (
353
353
self . ptr ,
354
354
loc_ptr,
355
- mem:: transmute ( kind) ,
355
+ mem:: transmute :: < GlobalKind , gccjit_sys :: gcc_jit_global_kind > ( kind) ,
356
356
types:: get_ptr ( & ty) ,
357
357
cstr. as_ptr ( ) ) ;
358
358
#[ cfg( debug_assertions) ]
@@ -590,13 +590,13 @@ impl<'ctx> Context<'ctx> {
590
590
unsafe {
591
591
let cstr = CString :: new ( name_ref) . unwrap ( ) ;
592
592
let ptr = gccjit_sys:: gcc_jit_context_new_function ( self . ptr ,
593
- loc_ptr,
594
- mem:: transmute ( kind) ,
595
- types:: get_ptr ( & return_ty) ,
596
- cstr. as_ptr ( ) ,
597
- num_params,
598
- params_ptrs. as_mut_ptr ( ) ,
599
- is_variadic as i32 ) ;
593
+ loc_ptr,
594
+ mem:: transmute :: < FunctionType , gccjit_sys :: gcc_jit_function_kind > ( kind) ,
595
+ types:: get_ptr ( & return_ty) ,
596
+ cstr. as_ptr ( ) ,
597
+ num_params,
598
+ params_ptrs. as_mut_ptr ( ) ,
599
+ is_variadic as i32 ) ;
600
600
#[ cfg( debug_assertions) ]
601
601
if let Ok ( Some ( error) ) = self . get_last_error ( ) {
602
602
panic ! ( "{}" , error) ;
@@ -620,11 +620,11 @@ impl<'ctx> Context<'ctx> {
620
620
} ;
621
621
unsafe {
622
622
let ptr = gccjit_sys:: gcc_jit_context_new_binary_op ( self . ptr ,
623
- loc_ptr,
624
- mem:: transmute ( op) ,
625
- types:: get_ptr ( & ty) ,
626
- rvalue:: get_ptr ( & left_rvalue) ,
627
- rvalue:: get_ptr ( & right_rvalue) ) ;
623
+ loc_ptr,
624
+ mem:: transmute :: < BinaryOp , gccjit_sys :: gcc_jit_binary_op > ( op) ,
625
+ types:: get_ptr ( & ty) ,
626
+ rvalue:: get_ptr ( & left_rvalue) ,
627
+ rvalue:: get_ptr ( & right_rvalue) ) ;
628
628
#[ cfg( debug_assertions) ]
629
629
if let Ok ( Some ( error) ) = self . get_last_error ( ) {
630
630
panic ! ( "{}" , error) ;
@@ -646,10 +646,10 @@ impl<'ctx> Context<'ctx> {
646
646
} ;
647
647
unsafe {
648
648
let ptr = gccjit_sys:: gcc_jit_context_new_unary_op ( self . ptr ,
649
- loc_ptr,
650
- mem:: transmute ( op) ,
651
- types:: get_ptr ( & ty) ,
652
- rvalue:: get_ptr ( & rvalue) ) ;
649
+ loc_ptr,
650
+ mem:: transmute :: < UnaryOp , gccjit_sys :: gcc_jit_unary_op > ( op) ,
651
+ types:: get_ptr ( & ty) ,
652
+ rvalue:: get_ptr ( & rvalue) ) ;
653
653
#[ cfg( debug_assertions) ]
654
654
if let Ok ( Some ( error) ) = self . get_last_error ( ) {
655
655
panic ! ( "{}" , error) ;
@@ -671,10 +671,10 @@ impl<'ctx> Context<'ctx> {
671
671
} ;
672
672
unsafe {
673
673
let ptr = gccjit_sys:: gcc_jit_context_new_comparison ( self . ptr ,
674
- loc_ptr,
675
- mem:: transmute ( op) ,
676
- rvalue:: get_ptr ( & left_rvalue) ,
677
- rvalue:: get_ptr ( & right_rvalue) ) ;
674
+ loc_ptr,
675
+ mem:: transmute :: < ComparisonOp , gccjit_sys :: gcc_jit_comparison > ( op) ,
676
+ rvalue:: get_ptr ( & left_rvalue) ,
677
+ rvalue:: get_ptr ( & right_rvalue) ) ;
678
678
#[ cfg( debug_assertions) ]
679
679
if let Ok ( Some ( error) ) = self . get_last_error ( ) {
680
680
panic ! ( "{}" , error) ;
@@ -1007,8 +1007,8 @@ impl<'ctx> Context<'ctx> {
1007
1007
value : * mut ( ) ) -> RValue < ' a > {
1008
1008
unsafe {
1009
1009
let ptr = gccjit_sys:: gcc_jit_context_new_rvalue_from_ptr ( self . ptr ,
1010
- types:: get_ptr ( & ty) ,
1011
- mem:: transmute ( value) ) ;
1010
+ types:: get_ptr ( & ty) ,
1011
+ mem:: transmute :: < * mut ( ) , * mut c_void > ( value) ) ;
1012
1012
#[ cfg( debug_assertions) ]
1013
1013
if let Ok ( Some ( error) ) = self . get_last_error ( ) {
1014
1014
panic ! ( "{}" , error) ;
0 commit comments