Compiler error: ... was not declared in this scope

Following an update of Arduino IDE from 1.0.6 to 1.6.7 I recompiled a number of known working sketches to find that I got: "functionthisorthat was not declared in this scope" on many of these sketches.

Note that I was able to re-compile a couple of the sketches by re-shuffling the relative position of these function declarations. Such that the 'not declared' functions would be placed above the calling functions.

This maybe irrelevant but I am compiling for a Teensy3.1

1) Has anybody else seen this ?

2) Short of re-editing all my old sketches is there a simple way to get around these error messages ?

Thanks!

JPRoy: 1) Has anybody else seen this ?

2) Short of re-editing all my old sketches is there a simple way to get around these error messages ?

Sounds similar to the following link and the couple of posts after it: http://forum.arduino.cc/index.php?topic=357312.msg2469047#msg2469047

OK I see that this has to do with the generation of Function prototypes that somehow got modified somewhere between 1.0.6 and 1.6.7

Is there any other solution except re-editing ALL my old sketches or going back to 1.0.6 ??

JPRoy:
I was able to re-compile a couple of the sketches by re-shuffling the relative position of these function declarations. Such that the ‘not declared’ functions would be placed above the calling functions.

You can also just manually declare the function prototypes.

JPRoy:
Is there any other solution except re-editing ALL my old sketches or going back to 1.0.6 ??

Chances are that you would only need to edit some of your old sketches. Automatically generation of function prototypes does still work for most common usages but is indeed broken for some cases. If you post example code that demonstrates the issues you find then I will look at them and see if they are known issues(as listed on Issues · arduino/arduino-builder · GitHub) or if you have found new ones that need to be reported. Hopefully by bringing these issues to the developers’ attention they will eventually be fixed. You probably don’t need to go all the way back to 1.0.6, the breakage occurred starting with Arduino IDE 1.6.6 so if you use 1.6.5r5 instead there is a good chance automatic prototype generation will still work for your sketches. There are some other changes between 1.0.6 and 1.6.5r5 that may cause your sketch to not compile but these are intentional breakages that had good reasons so it would be worth editing any sketches that need to be changed to work with 1.6.5r5.

Thank you very much for the clarifications. As suggested, I will manually add function prototypes to my old sketches as needed.