Skip to content

Commit c197acf

Browse files
author
bors-servo
authored
Auto merge of rust-lang#1343 - emilio:fixup, r=upsuper
codegen: Allow unused_mut to prevent warnings on little-endian machines. And fixup whitespace. This is a followup rust-lang#1342.
2 parents a899ce7 + 06203c4 commit c197acf

31 files changed

+644
-727
lines changed

Cargo.lock

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ readme = "README.md"
1414
repository = "https://github.com/rust-lang-nursery/rust-bindgen"
1515
documentation = "https://docs.rs/bindgen"
1616
homepage = "https://rust-lang-nursery.github.io/rust-bindgen/"
17-
version = "0.37.3"
17+
version = "0.37.4"
1818
build = "build.rs"
1919

2020
include = [

src/codegen/bitfield_unit.rs

+26-25
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,13 @@ where
2727
let byte_index = index / 8;
2828
let byte = self.storage.as_ref()[byte_index];
2929

30-
let mut bit_index = index % 8;
31-
#[cfg(target_endian = "big")]
32-
{
33-
// Adjust the index for endianness.
34-
bit_index = 7 - bit_index;
35-
}
30+
let bit_index =
31+
if cfg!(target_endian = "big") {
32+
7 - (index % 8)
33+
} else {
34+
index % 8
35+
};
36+
3637
let mask = 1 << bit_index;
3738

3839
byte & mask == mask
@@ -45,14 +46,14 @@ where
4546
let byte_index = index / 8;
4647
let byte = &mut self.storage.as_mut()[byte_index];
4748

48-
let mut bit_index = index % 8;
49-
#[cfg(target_endian = "big")]
50-
{
51-
// Adjust the index for endianness.
52-
bit_index = 7 - bit_index;
53-
}
54-
let mask = 1 << bit_index;
49+
let bit_index =
50+
if cfg!(target_endian = "big") {
51+
7 - (index % 8)
52+
} else {
53+
index % 8
54+
};
5555

56+
let mask = 1 << bit_index;
5657
if val {
5758
*byte |= mask;
5859
} else {
@@ -70,12 +71,12 @@ where
7071

7172
for i in 0..(bit_width as usize) {
7273
if self.get_bit(i + bit_offset) {
73-
let mut index = i;
74-
#[cfg(target_endian = "big")]
75-
{
76-
// Adjust the index for endianness.
77-
index = bit_width as usize - 1 - index;
78-
}
74+
let index =
75+
if cfg!(target_endian = "big") {
76+
bit_width as usize - 1 - i
77+
} else {
78+
i
79+
};
7980
val |= 1 << index;
8081
}
8182
}
@@ -92,12 +93,12 @@ where
9293
for i in 0..(bit_width as usize) {
9394
let mask = 1 << i;
9495
let val_bit_is_set = val & mask == mask;
95-
let mut index = i;
96-
#[cfg(target_endian = "big")]
97-
{
98-
// Adjust the index for endianness.
99-
index = bit_width as usize - 1 - index;
100-
}
96+
let index =
97+
if cfg!(target_endian = "big") {
98+
bit_width as usize - 1 - i
99+
} else {
100+
i
101+
};
101102
self.set_bit(index + bit_offset, val_bit_is_set);
102103
}
103104
}

tests/expectations/tests/bitfield-32bit-overflow.rs

+22-25
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ where
2828
let byte_index = index / 8;
2929
let byte = self.storage.as_ref()[byte_index];
3030

31-
let mut bit_index = index % 8;
32-
#[cfg(target_endian = "big")]
33-
{
34-
// Adjust the index for endianness.
35-
bit_index = 7 - bit_index;
36-
}
31+
let bit_index = if cfg!(target_endian = "big") {
32+
7 - (index % 8)
33+
} else {
34+
index % 8
35+
};
36+
3737
let mask = 1 << bit_index;
3838

3939
byte & mask == mask
@@ -46,14 +46,13 @@ where
4646
let byte_index = index / 8;
4747
let byte = &mut self.storage.as_mut()[byte_index];
4848

49-
let mut bit_index = index % 8;
50-
#[cfg(target_endian = "big")]
51-
{
52-
// Adjust the index for endianness.
53-
bit_index = 7 - bit_index;
54-
}
55-
let mask = 1 << bit_index;
49+
let bit_index = if cfg!(target_endian = "big") {
50+
7 - (index % 8)
51+
} else {
52+
index % 8
53+
};
5654

55+
let mask = 1 << bit_index;
5756
if val {
5857
*byte |= mask;
5958
} else {
@@ -71,12 +70,11 @@ where
7170

7271
for i in 0..(bit_width as usize) {
7372
if self.get_bit(i + bit_offset) {
74-
let mut index = i;
75-
#[cfg(target_endian = "big")]
76-
{
77-
// Adjust the index for endianness.
78-
index = bit_width as usize - 1 - index;
79-
}
73+
let index = if cfg!(target_endian = "big") {
74+
bit_width as usize - 1 - i
75+
} else {
76+
i
77+
};
8078
val |= 1 << index;
8179
}
8280
}
@@ -93,12 +91,11 @@ where
9391
for i in 0..(bit_width as usize) {
9492
let mask = 1 << i;
9593
let val_bit_is_set = val & mask == mask;
96-
let mut index = i;
97-
#[cfg(target_endian = "big")]
98-
{
99-
// Adjust the index for endianness.
100-
index = bit_width as usize - 1 - index;
101-
}
94+
let index = if cfg!(target_endian = "big") {
95+
bit_width as usize - 1 - i
96+
} else {
97+
i
98+
};
10299
self.set_bit(index + bit_offset, val_bit_is_set);
103100
}
104101
}

tests/expectations/tests/bitfield-large.rs

+22-25
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ where
2828
let byte_index = index / 8;
2929
let byte = self.storage.as_ref()[byte_index];
3030

31-
let mut bit_index = index % 8;
32-
#[cfg(target_endian = "big")]
33-
{
34-
// Adjust the index for endianness.
35-
bit_index = 7 - bit_index;
36-
}
31+
let bit_index = if cfg!(target_endian = "big") {
32+
7 - (index % 8)
33+
} else {
34+
index % 8
35+
};
36+
3737
let mask = 1 << bit_index;
3838

3939
byte & mask == mask
@@ -46,14 +46,13 @@ where
4646
let byte_index = index / 8;
4747
let byte = &mut self.storage.as_mut()[byte_index];
4848

49-
let mut bit_index = index % 8;
50-
#[cfg(target_endian = "big")]
51-
{
52-
// Adjust the index for endianness.
53-
bit_index = 7 - bit_index;
54-
}
55-
let mask = 1 << bit_index;
49+
let bit_index = if cfg!(target_endian = "big") {
50+
7 - (index % 8)
51+
} else {
52+
index % 8
53+
};
5654

55+
let mask = 1 << bit_index;
5756
if val {
5857
*byte |= mask;
5958
} else {
@@ -71,12 +70,11 @@ where
7170

7271
for i in 0..(bit_width as usize) {
7372
if self.get_bit(i + bit_offset) {
74-
let mut index = i;
75-
#[cfg(target_endian = "big")]
76-
{
77-
// Adjust the index for endianness.
78-
index = bit_width as usize - 1 - index;
79-
}
73+
let index = if cfg!(target_endian = "big") {
74+
bit_width as usize - 1 - i
75+
} else {
76+
i
77+
};
8078
val |= 1 << index;
8179
}
8280
}
@@ -93,12 +91,11 @@ where
9391
for i in 0..(bit_width as usize) {
9492
let mask = 1 << i;
9593
let val_bit_is_set = val & mask == mask;
96-
let mut index = i;
97-
#[cfg(target_endian = "big")]
98-
{
99-
// Adjust the index for endianness.
100-
index = bit_width as usize - 1 - index;
101-
}
94+
let index = if cfg!(target_endian = "big") {
95+
bit_width as usize - 1 - i
96+
} else {
97+
i
98+
};
10299
self.set_bit(index + bit_offset, val_bit_is_set);
103100
}
104101
}

tests/expectations/tests/bitfield-method-same-name.rs

+22-25
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ where
2828
let byte_index = index / 8;
2929
let byte = self.storage.as_ref()[byte_index];
3030

31-
let mut bit_index = index % 8;
32-
#[cfg(target_endian = "big")]
33-
{
34-
// Adjust the index for endianness.
35-
bit_index = 7 - bit_index;
36-
}
31+
let bit_index = if cfg!(target_endian = "big") {
32+
7 - (index % 8)
33+
} else {
34+
index % 8
35+
};
36+
3737
let mask = 1 << bit_index;
3838

3939
byte & mask == mask
@@ -46,14 +46,13 @@ where
4646
let byte_index = index / 8;
4747
let byte = &mut self.storage.as_mut()[byte_index];
4848

49-
let mut bit_index = index % 8;
50-
#[cfg(target_endian = "big")]
51-
{
52-
// Adjust the index for endianness.
53-
bit_index = 7 - bit_index;
54-
}
55-
let mask = 1 << bit_index;
49+
let bit_index = if cfg!(target_endian = "big") {
50+
7 - (index % 8)
51+
} else {
52+
index % 8
53+
};
5654

55+
let mask = 1 << bit_index;
5756
if val {
5857
*byte |= mask;
5958
} else {
@@ -71,12 +70,11 @@ where
7170

7271
for i in 0..(bit_width as usize) {
7372
if self.get_bit(i + bit_offset) {
74-
let mut index = i;
75-
#[cfg(target_endian = "big")]
76-
{
77-
// Adjust the index for endianness.
78-
index = bit_width as usize - 1 - index;
79-
}
73+
let index = if cfg!(target_endian = "big") {
74+
bit_width as usize - 1 - i
75+
} else {
76+
i
77+
};
8078
val |= 1 << index;
8179
}
8280
}
@@ -93,12 +91,11 @@ where
9391
for i in 0..(bit_width as usize) {
9492
let mask = 1 << i;
9593
let val_bit_is_set = val & mask == mask;
96-
let mut index = i;
97-
#[cfg(target_endian = "big")]
98-
{
99-
// Adjust the index for endianness.
100-
index = bit_width as usize - 1 - index;
101-
}
94+
let index = if cfg!(target_endian = "big") {
95+
bit_width as usize - 1 - i
96+
} else {
97+
i
98+
};
10299
self.set_bit(index + bit_offset, val_bit_is_set);
103100
}
104101
}

0 commit comments

Comments
 (0)