I like the direction you are taking, but I think the better solution is to have:
It's a nice idea for generic feature testing flags, but it's a lot of implementation work in the compiler. And it seems odd to implement a big part of a library in the compiler.