@@ -28,7 +28,7 @@ unsafe fn run_circuit(
2828
2929 let mut circuit_bytes: * mut u8 = std:: ptr:: null_mut ( ) ;
3030 let mut circuit_len: usize = 0 ;
31- unsafe { pecos_circuit_build ( circuit, & mut circuit_bytes, & mut circuit_len) } ;
31+ unsafe { pecos_circuit_build ( circuit, & raw mut circuit_bytes, & raw mut circuit_len) } ;
3232 unsafe { pecos_circuit_free ( circuit) } ;
3333
3434 // Process
@@ -39,8 +39,8 @@ unsafe fn run_circuit(
3939 engine,
4040 circuit_bytes,
4141 circuit_len,
42- & mut output_bytes,
43- & mut output_len,
42+ & raw mut output_bytes,
43+ & raw mut output_len,
4444 )
4545 } ;
4646 unsafe { pecos_free_bytes ( circuit_bytes, circuit_len) } ;
@@ -53,23 +53,21 @@ unsafe fn run_circuit(
5353 pecos_parse_outcomes (
5454 output_bytes,
5555 output_len,
56- & mut outcomes_ptr,
57- & mut num_outcomes,
56+ & raw mut outcomes_ptr,
57+ & raw mut num_outcomes,
5858 )
5959 } ;
6060 unsafe { pecos_free_bytes ( output_bytes, output_len) } ;
6161 assert_eq ! ( rc, 0 , "parse outcomes failed" ) ;
6262
63- let results = if num_outcomes > 0 && !outcomes_ptr. is_null ( ) {
63+ if num_outcomes > 0 && !outcomes_ptr. is_null ( ) {
6464 let slice = unsafe { std:: slice:: from_raw_parts ( outcomes_ptr, num_outcomes) } ;
6565 let v = slice. to_vec ( ) ;
6666 unsafe { pecos_free_outcomes ( outcomes_ptr, num_outcomes) } ;
6767 v
6868 } else {
6969 vec ! [ ]
70- } ;
71-
72- results
70+ }
7371}
7472
7573#[ test]
@@ -105,7 +103,7 @@ fn test_bell_state_correlation() {
105103 let q0: usize = 0 ;
106104 let q1: usize = 1 ;
107105 let pair = [ q0, q1] ;
108- pecos_circuit_h ( c, & q0, 1 ) ;
106+ pecos_circuit_h ( c, & raw const q0, 1 ) ;
109107 pecos_circuit_cx ( c, pair. as_ptr ( ) , 1 ) ;
110108 pecos_circuit_mz ( c, [ q0, q1] . as_ptr ( ) , 2 ) ;
111109 } )
@@ -131,8 +129,8 @@ fn test_deterministic_x_gate() {
131129 let outcomes = unsafe {
132130 run_circuit ( engine, |c| {
133131 let q: usize = 0 ;
134- pecos_circuit_x ( c, & q, 1 ) ;
135- pecos_circuit_mz ( c, & q, 1 ) ;
132+ pecos_circuit_x ( c, & raw const q, 1 ) ;
133+ pecos_circuit_mz ( c, & raw const q, 1 ) ;
136134 } )
137135 } ;
138136
@@ -148,8 +146,8 @@ fn test_circuit_reuse() {
148146 let outcomes1 = unsafe {
149147 run_circuit ( engine, |c| {
150148 let q: usize = 0 ;
151- pecos_circuit_h ( c, & q, 1 ) ;
152- pecos_circuit_mz ( c, & q, 1 ) ;
149+ pecos_circuit_h ( c, & raw const q, 1 ) ;
150+ pecos_circuit_mz ( c, & raw const q, 1 ) ;
153151 } )
154152 } ;
155153 assert_eq ! ( outcomes1. len( ) , 1 ) ;
@@ -177,8 +175,8 @@ fn test_rotation_gate() {
177175 let outcomes = unsafe {
178176 run_circuit ( engine, |c| {
179177 let q: usize = 0 ;
180- pecos_circuit_rx ( c, std:: f64:: consts:: PI , & q, 1 ) ;
181- pecos_circuit_mz ( c, & q, 1 ) ;
178+ pecos_circuit_rx ( c, std:: f64:: consts:: PI , & raw const q, 1 ) ;
179+ pecos_circuit_mz ( c, & raw const q, 1 ) ;
182180 } )
183181 } ;
184182
@@ -189,26 +187,26 @@ fn test_rotation_gate() {
189187#[ test]
190188fn test_circuit_builder_reset ( ) {
191189 // Test that circuit builder reset works
192- let circuit = unsafe { pecos_circuit_new ( ) } ;
190+ let circuit = pecos_circuit_new ( ) ;
193191
194192 // Build first circuit
195193 unsafe {
196194 let q: usize = 0 ;
197- pecos_circuit_h ( circuit, & q, 1 ) ;
195+ pecos_circuit_h ( circuit, & raw const q, 1 ) ;
198196 }
199197 let mut bytes1: * mut u8 = std:: ptr:: null_mut ( ) ;
200198 let mut len1: usize = 0 ;
201- unsafe { pecos_circuit_build ( circuit, & mut bytes1, & mut len1) } ;
199+ unsafe { pecos_circuit_build ( circuit, & raw mut bytes1, & raw mut len1) } ;
202200
203201 // Reset and build second circuit
204202 unsafe { pecos_circuit_reset ( circuit) } ;
205203 unsafe {
206204 let q: usize = 0 ;
207- pecos_circuit_x ( circuit, & q, 1 ) ;
205+ pecos_circuit_x ( circuit, & raw const q, 1 ) ;
208206 }
209207 let mut bytes2: * mut u8 = std:: ptr:: null_mut ( ) ;
210208 let mut len2: usize = 0 ;
211- unsafe { pecos_circuit_build ( circuit, & mut bytes2, & mut len2) } ;
209+ unsafe { pecos_circuit_build ( circuit, & raw mut bytes2, & raw mut len2) } ;
212210
213211 // Both should produce valid circuits
214212 assert ! ( len1 > 0 ) ;
0 commit comments