component generation is now compile compatible