I had a couple of problems with the recent Clang-related fixes on Fedora 31 when building Emacs, and worked around them by installing the attached patches, which I hope are reasonably self-explanatory. Fedora 31 uses Clang 9, and if the seeming Clang bugs/incompatibilities are fixed in later Clang versions I suppose we can do better there.