The attached patch extends compute_objsize() to handle conditional expressions represented either as PHIs or MIN_EXPR and MAX_EXPR. To simplify the handling of the -Wstringop-overflow/-overread warnings the change factors this code out of tree-ssa-strlen.c and into inform_access() in builtins.c, making it a member of access_ref. Besides eliminating a decent amount of code duplication this also improves the consistency of the warnings. Finally, the change introduces a distinction between the definite kinds of -Wstringop-overflow (and -Wstringop-overread) warnings and the maybe kind. The latter are currently only being issued for function array parameters but I expect to make use of them more extensively in the future. Besides the usual GCC bootstrap/regtest I have tested the change with Binutils/GDB and Glibc and verified that it doesn't introduce any false positives. Martin