We used to require .functype immediately follows the label it sets the type of, but not all Clang output follows this rule.
Now we simply allow it on any symbol, but only assume its a function start for a defined symbol, which is simpler and more general.
Fixes (part of) https://bugs.llvm.org/show_bug.cgi?id=49036
This looks a little worrying since I imagine what we are looking at here output from a compiler pass.
Can you check that WebAssemblyLowerGlobalDtors doesn't generate functions with local names like this? I think you can just build anything with static C++ ctor/dtor to see it in action.