Al Viro wrote: > Turn FORCE_MOD into storage class specifier (that's how it's > actually used and that makes for much simpler logics). > > Introduce explicit EXPR_FORCE_CAST for forced casts; handle it > properly. > > Kill the idiocy in get_as() (we end up picking the oddest things > for address space - e.g. if we have int __attribute__((address_space(1))) *p, > we'll get warnings about removal of address space when we do things like > (unsigned short)*p. Fixed. BTW, that had caught a bunch of very odd > bogosities in the kernel and eliminated several false positives in there. > > As the result, get_as() is gone now and evaluate_cast() got simpler. > > Kill the similar idiocy in handling pointer assignments; while we are at it, > fix the qualifiers check for assignments to/from void * (you can't assign > const int * to void * - qualifiers on the left side should be no less than > on the right one; for normal codepath we get that checked, but the special > case of void * skips these checks). Applied (yesterday); thanks! - Josh Triplett
Attachment:
signature.asc
Description: OpenPGP digital signature