Original Post
I'm currently creating an IDE for a C compiler for the 8051 microcontroller using C#. Everything's going smoothly - I've integrated the compiler, created a project explorer and I've even got syntax highlighting for the C source code. The main feature left to implement is a sort of intellisense. What I want to be able to do in the source code editor is to hover over a variable with the mouse and a little box will come up with the variables type. Also, I want to be able to right click on the variable to bring up a context menu with the option to jump to where the variable was declared. To do this, I think I need to parse the C code, generating a table of variable names and where they were declared. When the mouse is hovered over a word, I'll search the table for the variable and then display how the variable was declared. Simple! Now, as I'm parsing C code only, not C++, I'm not too bothered about auto complete for struct's or even listing their members. Now, I've tried googling, but I'm not entirely sure what I'm searching for! I've found this on lcc, but not sure how to use it. Another idea I've had is to create a separate program to parse the C code in the background, which I could create in C++ and use Spirit, in particular, there's a C grammar parser that might be helpful. Any ideas guys, or even what to search for, would be much appreciated.