restoring the code to safer form as the clang bug is fixed