------- Comment #3 from jvdelisle at gcc dot gnu dot org 2007-03-17 06:28 ------- The front end is converting the integer8 to integer4 and not checking the range of the number first. The integer value gets wrapped around and the library sees unit=10 for this test case.
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31201