Changing "arduino.h" to "Arduino.h" makes no difference. I have checked that repeatedly. I have also tried <arduino.h> and <Arduinon.h>.
The problem always happens in an included class file. And it disappears sometimes without any changes on my part. I think it has something to do with how the compiler is configured, but that's way above my competence grade.