A while back I posted a question about adding edit-and-continue abilities. Since then I've begun work on a rapid development compiler (rdc) which has these abilities, but I've had some thoughts I'd like to share, and receive some feedback from the GCC experts:
What if a subset of GCC could be used for this? A portion which uses the parser to push properly parsed instructions to a new code generator module which handles the entirety of the edit-and-continue requirements? I would offer to write these. These abilities would be one part of the other part, which would be changes to GDB which allow the changes to be updated against the executable code image in memory. The goal here would not be to have ANY code speed, code size, or anything glorious in the generated code, but would be only a true and wholly accurate representation in execution as dictated by the original source code, with all traditional step-through line-by-line debugging abilities being generated, but with the added new ability to allow compilation of changed source code, merged into the existing executable and image in memory without leaving or restarting the app. The product I've been developing is a simple C/C++ compiler that basically does what I've described. It's in early stages, and it occurred to me that it might be easy or easier for me to add this new edit-and-continue module to both GCC and GDB, and then have the existing GCC community reap the benefits of this added feature, being maintained from here on out -- by me at first, but whoever else would want to do it at some point. Any thoughts? Thank you in advance. - Rick C. Hodgin - Email me for phone contact info if you want to talk to me personally.