@@ -53,7 +53,8 @@ pub(crate) fn rem_pio2(x: f64) -> (i32, f64, f64) {
5353 let tmp = x as f64 * INV_PIO2 + TO_INT ;
5454 // force rounding of tmp to it's storage format on x87 to avoid
5555 // excess precision issues.
56- #[ cfg( all( target_arch = "x86" , not( target_feature = "sse2" ) ) ) ] force_eval ! ( tmp) ;
56+ #[ cfg( all( target_arch = "x86" , not( target_feature = "sse2" ) ) ) ]
57+ let tmp = force_eval ! ( tmp) ;
5758 let f_n = tmp - TO_INT ;
5859 let n = f_n as i32 ;
5960 let mut r = x - f_n * PIO2_1 ;
@@ -195,25 +196,25 @@ mod tests {
195196 #[ test]
196197 fn test_near_pi ( ) {
197198 let arg = 3.141592025756836 ;
198- force_eval ! ( arg) ;
199+ let arg = force_eval ! ( arg) ;
199200 assert_eq ! (
200201 rem_pio2( arg) ,
201202 ( 2 , -6.278329573009626e-7 , -2.1125998133974653e-23 )
202203 ) ;
203204 let arg = 3.141592033207416 ;
204- force_eval ! ( arg) ;
205+ let arg = force_eval ! ( arg) ;
205206 assert_eq ! (
206207 rem_pio2( arg) ,
207208 ( 2 , -6.20382377148128e-7 , -2.1125998133974653e-23 )
208209 ) ;
209210 let arg = 3.141592144966125 ;
210- force_eval ! ( arg) ;
211+ let arg = force_eval ! ( arg) ;
211212 assert_eq ! (
212213 rem_pio2( arg) ,
213214 ( 2 , -5.086236681942706e-7 , -2.1125998133974653e-23 )
214215 ) ;
215216 let arg = 3.141592979431152 ;
216- force_eval ! ( arg) ;
217+ let arg = force_eval ! ( arg) ;
217218 assert_eq ! (
218219 rem_pio2( arg) ,
219220 ( 2 , 3.2584135866119817e-7 , -2.1125998133974653e-23 )
0 commit comments