eandrews added a comment. In D98895#3119027 <https://reviews.llvm.org/D98895#3119027>, @asavonic wrote:
> In D98895#3118821 <https://reviews.llvm.org/D98895#3118821>, @eandrews wrote: > >> This patch causes a regression. >> >> To reproduce - `clang -cc1 -fsycl-is-device -triple spir64 test.cpp` >> >> test.cpp:x:3: error: 'bar<__float128>' requires 128 bit size '__float128' >> type support, but target 'spir64' does not support it >> T bar() { return T(); }; >> ^ >> >> I looked at it briefly, and I believe the issue is call to >> `checkTypeSupport()` in `ActOnFinishFunctionBody()`. I tried deleting the >> call but it breaks tests (E.g. L26 in x86_64-no-x87.cpp). @asavonic Please >> take a look. I will be reverting the patch if this cannot be fixed soon. > > The diagnostic seems to be correct - this instance of `bar` returns an > unsupported type. Why do you think it should not be diagnosed? @asavonic I spoke offline with @erichkeane. I was mistaken. There are only 2 error diagnostics generated (upstream) after this patch. The additional diagnostic generated at `bar ` after your patch is correct. We just need to remove the third diagnostic downstream. So nothing needs to be done here. I apologize for the confusion and trouble. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D98895/new/ https://reviews.llvm.org/D98895 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits