about summary refs log tree commit diff
path: root/src/libcore
diff options
context:
space:
mode:
authorP1start <rewi-github@whanau.org>2014-12-23 13:13:49 +1300
committerP1start <rewi-github@whanau.org>2014-12-25 18:58:47 +1300
commitd9769ec3834b62318da892925dc24c8883bb1635 (patch)
tree0455c075f4c1d37151c726fbbf6621e55448c525 /src/libcore
parent7e11b22713aebd28ceaaa2ecef937c9b9d247c2f (diff)
downloadrust-d9769ec3834b62318da892925dc24c8883bb1635.tar.gz
rust-d9769ec3834b62318da892925dc24c8883bb1635.zip
Parse fully-qualified associated types in generics without whitespace
This breaks code that looks like this:

    let x = foo as bar << 13;

Change such code to look like this:

    let x = (foo as bar) << 13;

Closes #17362.

[breaking-change]
Diffstat (limited to 'src/libcore')
-rw-r--r--src/libcore/hash/sip.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/libcore/hash/sip.rs b/src/libcore/hash/sip.rs
index ab6b0986c68..2501037107a 100644
--- a/src/libcore/hash/sip.rs
+++ b/src/libcore/hash/sip.rs
@@ -50,19 +50,19 @@ pub struct SipState {
 macro_rules! u8to64_le {
     ($buf:expr, $i:expr) =>
     ($buf[0+$i] as u64 |
-     $buf[1+$i] as u64 << 8 |
-     $buf[2+$i] as u64 << 16 |
-     $buf[3+$i] as u64 << 24 |
-     $buf[4+$i] as u64 << 32 |
-     $buf[5+$i] as u64 << 40 |
-     $buf[6+$i] as u64 << 48 |
-     $buf[7+$i] as u64 << 56);
+     ($buf[1+$i] as u64) << 8 |
+     ($buf[2+$i] as u64) << 16 |
+     ($buf[3+$i] as u64) << 24 |
+     ($buf[4+$i] as u64) << 32 |
+     ($buf[5+$i] as u64) << 40 |
+     ($buf[6+$i] as u64) << 48 |
+     ($buf[7+$i] as u64) << 56);
     ($buf:expr, $i:expr, $len:expr) =>
     ({
         let mut t = 0;
         let mut out = 0u64;
         while t < $len {
-            out |= $buf[t+$i] as u64 << t*8;
+            out |= ($buf[t+$i] as u64) << t*8;
             t += 1;
         }
         out