Including both the front-end-specific and the multiplexing header currently requires the programmer to obey a specific inclusion order - the front-end specific header version is required to be included before the generic header.
Header files should not put dependencies on one another. Every inclusion order should be valid.