Я могу думать о двух причинах. Во-первых, Intellisense должен был бы знать о правилах неявного преобразования и тому подобном, и в конечном итоге он оказался таким же умным, как и компилятор. Вероятно, они просто решили, что простая реализация была достаточно хороша (представьте себе случаи более сложные, чем у вас - например, передача результатов функции непосредственно другой функции). Кроме того, я думаю, что было бы неприятно, если Intellisense скрыл конкретную перегрузку, которую я хотел вызвать (потому что, возможно, аргумент имел неправильный тип) - я бы предпочел закончить написание кода с нужной мне функцией, а затем вернуться и исправить любые ошибки.