Really basic but strange problem

Robin2:
I can't recall whether that is also true of functions.

Generally it should not be. The Arduino IDE adds prototypes for all functions in .ino files at the top of the first .ino file. Sometimes function prototype generation doesn't work correctly but I've never seen that be caused by putting files in tabs. It's more likely that a prototype was never correctly generated but it didn't matter before since the function was defined before it was called. After the sketch was split into tabs this was no longer the case and so it exposed the prototype generation failure.