Is this idiom popular in modern production code? (Any recommended open source examples)
This is somewhat rare, although you see it from time to time. I would not call it popular, the use of polymorphism in C programs is often not enough.
This code requires performance - does this idiom help speed and / or memory usage?
This will not make the code more efficient than a structure containing all 3 members. In the worst case, legacy will make the code less efficient. The best way to tell is to parse the compiler for your specific platform and see for yourself.
... is this a problem with an implementation or an idiom?
Inheritance should generally be used carefully; inheritance for the sake of inheritance fills the goals. This is true for all OO languages.
Personally, I think this particular idiom and similar attempts to include useful OO features in C are problematic. Mainly because they add significant complexity to the program. Such things were preached in the book Object-Oriented Programming Using ANSI-C (Axel-Tobias Schreiner, released in the early 90's). I personally find that most of the things in this book are pretty awful.
in an ideal world, 500,000 LOC with this idiom would be quickly understood?
This is much more dependent on program structure, file structure, and coding standards than on this small OO idiom. Although, of course, 500k loc will not be quickly understood, even if the program is up to date.
source share