Protect variant against self assignment