ADC existencial doubt

ozcy:
I need to use the ADC through an interrupt and changing the chanel after each conversion. I did follow the guide from this forum and by the Datasheet of 328p. After read fine both documents did me arise the next existencial doubt: When I execute the routine associated to the ADC vector handler, Is the interrupt flag cleared at the begining or at he end of the code contained on the ISR(){} routine?

A test shows that the ADIF flag is clear once the ISR starts executing. Thus the sentence:

ADIF is cleared by hardware when executing the corresponding interrupt handling vector.

... means "when it starts executing ...".

This makes sense because interrupts in general can be queued, eg. once you start processing an incoming serial byte interrupt, it can then notice another serial byte arriving, which will then be detected once the current ISR finishes.