Supervised and unsupervised classification, Sentinel 2

Hi, could the people of SNAP clarify why the supervised classification (I’m using MLC) does not work if a reprojection step is not included? According to the previous posts and my experience the process works when:

Resample (and save product)
Subset (if necessary) (and save product)
Reproject (and save product)
Run classification (training areas created before)

Why do we have to reproject if the S2 1c has already a reference system? Is this a software bug? It doesn’t look logical to reproject a product that is already projected

Thanks for the clarification
M