tra accepted this revision. tra added inline comments. This revision is now accepted and ready to land.
================ Comment at: clang/test/SemaCUDA/deferred-oeverload.cu:55 callee3(); // dev-error {{no matching function for call to 'callee3'}} callee4(); // com-error {{no matching function for call to 'callee4'}} + S s; ---------------- yaxunl wrote: > tra wrote: > > If we're allowing to postpone an invalid call of a host function, shouldn't > > we also allow postponing other errors? > > E.g. should we postpone the error on an attempt to call `callee4()` ? > > Similarly, if we were to call a `undeclared_func()` here, should the error > > also be postponed? > > > > TBH, I don't quite understand now how to tell what is and isn't supposed to > > be deferred with `-fgpu-defer-diags`. > > Is there a clear criteria what should and should not be deferred? > > > We discussed about what diagnostics to be deferred before. We do not want to > defer all diagnostics since nvcc apparently only ignores host/device related > diagnostics. Our previous conclusion is to defer overloading resolution > related diagnostics when the full candidates set include host device > functions or wrong-sided candidates. This roughly matches nvcc's behavior. Please bear with me. I don't have all the relevant context in my head. Nor would anyone else looking at the patch. > Our previous conclusion is to defer overloading resolution related > diagnostics when the full candidates set include host device functions or > wrong-sided candidates. This roughly matches nvcc's behavior. Thank you. This should probably be added somewhere at the top of this test file. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104505/new/ https://reviews.llvm.org/D104505 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits