On Fri, 13 Sept 2024 at 10:30, Sunil Kumar Dora <sunilkumar.dora@xxxxxxxxxxxxxxxx> wrote: > > Dear GCC Community, > I am currently encountering an issue with the -Wrange-loop-construct warning in GCC version 14, as well as in earlier versions. It appears that the warning is triggered incorrectly for certain loop constructs. > Issue Details: > I have tested the following code, which produces a warning with GCC/G++ suggesting the use of a reference: > Test Code: > Link to test code on Godbolt<https://godbolt.org/z/xM4K6s34E> (GCC produces warning) > For comparison, here is how Clang 18 handles the same code: > Link to Clang result on Godbolt<https://godbolt.org/z/aYTxP7K9o> (Clang handles correctly) > It seems that GCC/G++ might be checking for trivial copyability rather than trivial copy-constructibility, which could be contributing to the issue. > Questions: > > 1. Is this a known issue with the -Wrange-loop-construct option? > 2. Am I possibly overlooking something in my usage of this option? > > If this is a known issue, or if you require additional information, please let me know. Additionally, if it would be appropriate to create a formal bug report to track this, I would be happy to do so. Please file a bug report (and please don't send a mail to both the gcc and gcc-help lists, very few mails belong on both lists at the same time - just pick one). I'm not sure what the heuristic is for triggering the warning, but I agree that testing for trivially copy constructible might be better here. > Thank you very much for your assistance and guidance. > > Thanks, > Sunil Dora