What does "-flax-vector-conversions" exactly mean for ARM compiler?

  arm, c++, compiler-flags

I am tring to write a xxx.toolchain.cmake from arm-linux-gnueabihf gcc/g++ compiler.

What confused me is, whether should I use -flax-vector-conversions compilation flag or not. I read the doc/man page of the compiler, and it tells:


Allow implicit conversions between vectors with differing numbers of elements and/or incompatible element types. This option should not be used for new code.

(via https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html)

My two confusions:

  1. What does "vectors" mean in this explanation? Is there any example illustrate this?

  2. What does "new code" mean? Why "new code" should not use with this compilation option?

Source: Windows Questions C++