added comment and changed to private inheritance for special_var_shadower_t