Merge pull request #3992 from RosettaCommons/revert-3991-revert-3984-JackMaguire/CxxExtras Retrying #3984 but with extra guards around the static asserts