------- Comment #1 from burnus at gcc dot gnu dot org 2009-05-27 07:44 ------- I don't think your patch fixes the following,
print *, leadz(-1_1), leadz(-1_2), leadz(-1_4), leadz(-1_8), leadz(-1_16) which yields 7 15 31 63 127 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40019