rmaz added a comment. In D133586#3781536 <https://reviews.llvm.org/D133586#3781536>, @rtrieu wrote:
> In D133586#3781468 <https://reviews.llvm.org/D133586#3781468>, @rmaz wrote: > >> In D133586#3781381 <https://reviews.llvm.org/D133586#3781381>, @rtrieu wrote: >> >>> Do you have a test case for this? >> >> Was struggling to think of a good one. How about a test that repeatedly >> generates a pcm for a func decl with no params and checks if the >> DECL_FUNCTION record is the same? > > Have you looked at clang/test/Modules/odr_hash.cpp? It's where most of the > ODR hash testing takes place by testing that Decls can be merged properly > instead of checking the contents of pcm files.. Using `#if define`, it > creates multiple modules from the same file. I would suggest creating two > functions in each of the modules, then in the main file, using the function > to force it to be loaded from the modules and merged together. The test > should fail with the current Clang, but pass with your patch. You may need > to create your test file if you need different compiler options. I took a look at writing a test to cover this, but hit the following problem: function qualifiers are only valid on c++ members, and there we cannot create FunctionNoProtoTypes. I couldn't think of a way of testing this by comparing module output that would fail deterministically, as it relies on reusing uninitialized memory that is non-zero. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D133586/new/ https://reviews.llvm.org/D133586 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits