please write two lines:
1. why this switch is needed (gcc)
2. why it is not enabled in all cases (clang)