Won't it be easier to simply take an intersection of all options and the incompatible options instead of tracking them in an instance variable? Perhaps you can reuse this `exit_options = [:version, :verbose_version, :show_cops]` by promoting it a constant.