labrinea wrote: > We used to diagnose streaming functions that attempted to be multiversioned
but we did not diagnose a streaming caller of a versioned function, and since streaming compatible versions were not diagnosed either it was possible to mix calling conventions between versions: - Streaming function calls streaming compatible version: https://godbolt.org/z/E6vnWd33x. Note that if bar._sve() was declared non streaming, then the call would be surrounded by smtop/smstart: https://godbolt.org/z/Wdf8oWoxh. - In a separate translation unit, another version is defined (the default) with a different calling convention (non streaming). With llvm18 this compiles just fine: https://godbolt.org/z/GxzEGr6Yx - The same as before in llvm trunk yields a semantic error: https://godbolt.org/z/fzbb5hTGb https://github.com/llvm/llvm-project/pull/101007 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits