Actions
Bug #332
openAlias analyzer doesn't alias int with volatile int!
Start date:
08/03/2010
Due date:
% Done:
0%
Estimated time:
Detected in build:
pre-ldv
Platform:
Published in build:
Description
For this program *p
is not aliased with a
, and BLAST reports an unsafe.
int main() { int volatile a = 4; int * const p = &a; p = &a; a = a - 4; if (*p != 0){ ERROR: goto ERROR; } return 0; }
If we remove volatile qualifier, the types--as BLAST understands them--start to match, and the program passes.
Updated by Alexey Khoroshilov almost 14 years ago
- Priority changed from Low to Normal
Updated by Evgeny Novikov about 13 years ago
Is this the case for the new implementation of aliases?
Updated by Pavel Shved about 13 years ago
Yes, it still is the case. There is a test for this case, and it's still not passed. I did not address this problem at all, since what I fixed were only queries to the alias analysis mechanism, not the code that gets the full-program flow-insensitive may-alias information.
Since we now (most likely) have the fast iterations, this problem could be addressed sooner.
Updated by Pavel Shved about 13 years ago
- Project changed from Linux Driver Verification to BLAST
- Category deleted (
BLAST)
Actions