Если тип переменной изменяется, sizeof не требует изменения, если переменная является аргументом, а не типом.
Относительно комментария @ icepack: возможность или вероятность изменения типа в зависимости от имени переменной не является проблемой. Представьте, что имя переменной используется в качестве аргумента для sizeof, а затем изменено. В лучшем случае операция refactor-rename изменяет все вхождения, и ошибки не возникает. В худшем случае пропускается экземпляр sizeof, и компилятор жалуется, и вы исправляете это. Если тип изменен, то все готово, нет ошибок в выражениях sizeof.
Теперь представьте, что тип является аргументом для sizeof. Если тип переменной изменяется, нет никакого другого средства, кроме проверки, чтобы найти все sizeof, относящиеся к этой переменной. Вы можете искать, но вы получите хиты для всех не связанных с использованием sizeof того же типа. Если один из них пропущен, у вас возникнет проблема во время выполнения из-за несоответствия размера, что гораздо сложнее найти.