Similar to 123ce97fac78bc4519afd5d2aba17c59c5717aad for dllimport: dllexport
expresses a non-hidden visibility intention. We can consider it explicit and
therefore it should override the global visibility setting (see AST/Decl.cpp
"NamedDecl Implementation").
Adding the exception to CodeGenModule::setGlobalVisibility is somewhat weird,
but allows us to add the code in one place instead of many in AST/Decl.cpp.