ART: Fix some -Wpedantic errors
Remove extra semicolons.
Dollar signs in C++ identifiers are an extension.
Named variadic macros are an extension.
Binary literals are a C++14 feature.
Enum re-declarations are not allowed.
Overflow.
Change-Id: I7d16b2217b2ef2959ca69de84eaecc754517714a
diff --git a/runtime/arch/x86/fault_handler_x86.cc b/runtime/arch/x86/fault_handler_x86.cc
index 7db84d0..17310b6 100644
--- a/runtime/arch/x86/fault_handler_x86.cc
+++ b/runtime/arch/x86/fault_handler_x86.cc
@@ -207,18 +207,18 @@
}
if (has_modrm) {
- uint8_t mod = (modrm >> 6) & 0b11;
+ uint8_t mod = (modrm >> 6) & 3U /* 0b11 */;
// Check for SIB.
- if (mod != 0b11 && (modrm & 0b111) == 4) {
+ if (mod != 3U /* 0b11 */ && (modrm & 7U /* 0b111 */) == 4) {
++pc; // SIB
}
switch (mod) {
- case 0b00: break;
- case 0b01: displacement_size = 1; break;
- case 0b10: displacement_size = 4; break;
- case 0b11:
+ case 0U /* 0b00 */: break;
+ case 1U /* 0b01 */: displacement_size = 1; break;
+ case 2U /* 0b10 */: displacement_size = 4; break;
+ case 3U /* 0b11 */:
break;
}
}