I'm working on a kernel for a proprietary embeded system. I've had no issues but I'd like to expand its capabilities directly. I made it run C. I did so pretty much by giving my kernel a stack.
My question is C only required a stack to be able to execute cross-compiled code. What beyond a stack would I need to provide at the kernel level for the execution of cross-compiled C++ code. That is, does it need a heap, more complex data types and structures, et al?
To me it's become a chicken or egg problem as anything that I think C++ might need is easily written in C++.
NB: I have endeavored to research this question here and elsewhere and have not found an answer to this specific issue. I have tried to make this a very specific question in accordance with the rules here, please help me if revisions are necessary.