It is known that the mechanical energy of a system is conserved if the only forces acting on it are conservative. In class, however, my teacher pointed out that the mechanical energy of an object sliding down a frictionless slope is preserved, despite a non-conservative force (the normal force) acting on it. He said it was okay for non-conservative forces to act on it if were perpendicular to its displacement, i.e. did no work.
So what are the exact requirements for mechanical energy of a system to be conserved? Should only conservative forces be acting on it? Or are non-conservative forces allowed as long as they do no work?