It is a common practice in glibc header to provide an inline redefinition of an
existing function. It is especially the case for fortified function.
Clang currently has an imperfect approach to the problem, using a combination of
trivially recursive function detection and noinline attribute.
Simplify the logic by suffixing these functions by .inline during codegen, so
that they are not recognized as builtin by llvm.
After that patch, clang passes all tests from:
https://github.com/serge-sans-paille/fortify-test-suite
avoid {} for single statement conditionals.
https://llvm.org/docs/CodingStandards.html#don-t-use-braces-on-simple-single-statement-bodies-of-if-else-loop-statements