Fix assignment operator errors on newer clang

Causes errors on android ndk r22
This commit is contained in:
Aaron Kling committed 2021-01-01 01:32:35 -06:00
1 parent d71c46c8f9
commit d1a51d54bb
1 file changed
+5 -4
+5 -4
View File
@@ -6,15 +6,16 @@ struct flag_t {
+ (d << 3) + (i << 2) + (z << 1) + (c << 0);
}
inline unsigned operator=(uint8 data) {
inline unsigned assign(uint8 data) {
n = data & 0x80; v = data & 0x40; m = data & 0x20; x = data & 0x10;
d = data & 0x08; i = data & 0x04; z = data & 0x02; c = data & 0x01;
return data;
}
inline unsigned operator|=(unsigned data) { return operator=(operator unsigned() | data); }
inline unsigned operator^=(unsigned data) { return operator=(operator unsigned() ^ data); }
inline unsigned operator&=(unsigned data) { return operator=(operator unsigned() & data); }
inline unsigned operator =(unsigned data) { return assign(data); }
inline unsigned operator|=(unsigned data) { return assign(operator unsigned() | data); }
inline unsigned operator^=(unsigned data) { return assign(operator unsigned() ^ data); }
inline unsigned operator&=(unsigned data) { return assign(operator unsigned() & data); }
flag_t() : n(0), v(0), m(0), x(0), d(0), i(0), z(0), c(0) {}
};