Po if nie używamy will tylko w zdaniach podrzędnych warunkowych - czyli jeśli + warunek. Twój przykład nie jest zdaniem warunkowym tylko pytaniem pozornym. Czyli poprawnie If ( whether) he will come.
Jest jednak typ warunku tzw. cooparative conditional, gdzie nawet po if jest will - jesli w warunku oferujesz współpracę ( cooperation)
If you will clean the flat I will go shoppin.
If ma dwie funkcje - warunki i wprowadznie pytan pozornych, twój
przykład to to drugie. Jest will.