Apparently I have a different manpage.
Ignore case distinctions, so that characters that differ only in
case match each other.
In any case, it's not about the filenames.
It ignores case in the file (contents) but also in the pattern.
Grep results (ignore case of file contents):
$ grep hello test.txt
$ grep Hello test.txt
$ grep -i HELLO test.txt
$ grep -i hello test.txt
Grep results (ignore case of pattern):
$ grep [a-Z] test.txt
grep: Invalid range end
$ grep -i [a-Z] test.txt
$ grep -i [A-z] test.txt
$ grep [A-z] test.txt
As you can see the results can sometimes be a little unexpected.
Not sure if there is an example where this actually matters more.