瀏覽代碼

Fix biguint assert_assign_op for rust 1.8

The `$op` only seems to be accepted when used indirectly through another
macro, in this case `assert_eq`.  How nice.
Josh Stone 7 年之前
父節點
當前提交
953087fe4e
共有 1 個文件被更改,包括 4 次插入5 次删除
  1. 4 5
      bigint/src/tests/biguint.rs

+ 4 - 5
bigint/src/tests/biguint.rs

@@ -29,11 +29,10 @@ macro_rules! assert_assign_op {
     ($left:ident $op:tt $right:ident == $expected:expr) => {
         {
             let mut tmp12384 = $left.clone();
-            tmp12384 $op &$right;
-            assert_eq!(tmp12384, $expected);
-            tmp12384 = $left.clone();
-            tmp12384 $op $right.clone();
-            assert_eq!(tmp12384, $expected);
+            assert_eq!({ tmp12384 $op &$right; tmp12384}, $expected);
+
+            let mut tmp12384 = $left.clone();
+            assert_eq!({ tmp12384 $op $right.clone(); tmp12384}, $expected);
         }
     };
 }