I belive, you can reproduce it in one single file, which we could just copy&paste into an empty file, and try to compile. It should go like this:
// states definition... // machine definition... int main() { // machine instantiation }
Ok. Please see the attached file in which I put the whole source code. Putting everything into one file, surprisingly for me, solved my problem of not being able to nest a sub-state under a super state. Now I need to figure out why the previous implementation (i.e., the one distributed over multiple files) does not compile. Ultimately, I should be able to distribute my actual state machine implementation to multiple files for better scalability, readability, maintainability, etc. I will investigate further and announce the outcome. Needless to say, I would also very much appreciate if you would be willing to quickly point out where I went wrong in the previous implementation.