> So I am not sure I understand Richard's points above, so let me be clear > about what ASIS is. > > It is a set of libraries, and a well defined API, that allows generic > tools to be written that have full access to the semantic information > discovered by the compiler. This API is fully documented and defined > in a compiler-neutral form. > > I am not at all clear that we have ANYTHING like that for GCC, so I > am completely puzzled by Richard's last remark.
The discussion here is competely different. The issue isn't the interface, but the mechanism of how it's called. A "plugin" here means a module that would be dynamically loaded by GCC, as opposed to being linked in to the compiler statically. In other words, once a plugin mechanism exists, it's possible to add passes to GCC without having to change the compiler at all. The analogy are the plugins to Mozilla.