efriedma added inline comments.
================ Comment at: docs/ReleaseNotes.rst:84 + In a future release of Clang, we intend to change the default to + ``-fno-lax-vector-conversions``. + ---------------- kristof.beyls wrote: > efriedma wrote: > > rsmith wrote: > > > efriedma wrote: > > > > And if you want to allow your code to build with both clang-9 and > > > > clang-10, you have to do version detection in your build scripts? > > > I guess you'd detect whether the compiler supports > > > `-flax-vector-conversions=all`, and pass that if so, and otherwise pass > > > `-flax-vector-conversions`. Well, either that or you fix your code to not > > > rely on lax vector conversions between int and float vectors. If your > > > code builds with GCC, you did that already (they never supported lax > > > conversions between float and int vectors, as far as I can tell). > > > > > > Do you have a preferred alternative? > > All the alternatives are terrible in their own way: > > > > 1. This status quo, which breaks compatibility with previous versions of > > clang > > 2. We could make -flax-vector-conversions mean the same thing as earlier > > versions of clang. So the flag wouldn't have the same meaning as gcc's > > flag. > > 3. Some mix of the previous options: we could wait until there are one or > > two released versions that support -flax-vector-conversions=all , then > > change the meaning of -flax-vector-conversions. But I have no idea how we > > would decide on a timeline. > > > > I ran into this issue recently updating our compiler. That said, the code > > in question was only using the implicit conversion in a couple places by > > accident, so it was easy enough to just fix the source. > Maybe adding an entry in the release notes about this change could help with > making option 1 slightly more palatable? > My guess is that option 1 is the right one for the long term (compatibility > between gcc and clang so code is more portable between both compilers). It probably makes sense to call out the behavior change to -flax-vector-conversions in the release notes, yes. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D67678/new/ https://reviews.llvm.org/D67678 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits