Interestingly, if I push all the code together into the main sketch, it compiles successfully. Only with the class defined in separate .cpp/.h files does it throw an error.
Alternately, if I maintain the file structure but remove the "__inline" declaration it also compiles successfully.
Well… if I declare the function in the .h file instead of the .cpp file it works. But why it works when all text is contained in the same sketch is lost on me.
For non-inline functions, code is generated for the function when the source file is compiled. References (calls) to the function are resolved by the linker; it changes stubs in the referencing code to an actual call.
Code for inline functions is generated "on the spot". Instead of a call, the code is inserted at the point of the call. In order to insert the code when an inline function is "called", the compiler has to have access to the body of the function.
That isn't very well written so it probably doesn't make much sense. Hopefully a concrete example will clear up the matter...
Moving the body for myFunction into the header file should resolve the problem...