For several MCUXpresso IDE versions now going back to 10.1.0, I see a bunch of notes in the build output regarding my code including the <vector> header file. This is a C++11 project using vectors. The notes are mostly annoying though suspicious. Seeing that subsequent build toolchain updates in MCUXpresso did not resolve or get rid of these notes, I wanted to ask the MCUXpresso design team about the plan to correct/remove them.
The sample below comes for just one .cpp file. I have a similar set for other .cpp files that include <vector>
Building file: ../src/switch_fabric/optce_conn_mgr_port.cpp
Invoking: MCU C++ Compiler
arm-none-eabi-c++ -DDEBUG -D__MCUXPRESSO -DCORE_M7 -DCR_PRINTF_CHAR -D__GENERIC_M7__ -D__NEWLIB__ -D__USE_CMSIS -DSDK_OS_FREE_RTOS -DFSL_RTOS_FREE_RTOS -I"../inc/public" -I"../src/switch_fabric" -I"../src/tasks" -I"../src/tasks/pool" -I"../../../components/lCON/inc/public" -I"../../../components/lSPI/inc/public" -I"../../../components/lTimingProfiler/src" -I"../../../components/lUTIL/inc/public" -I"../../../vendor/sdk/devices/RT1052/utilities" -I"../../../vendor/sdk/rtos/amazon-freertos/FreeRTOS/portable" -I"../../../vendor/sdk/rtos/amazon-freertos/include" -I"../../../vendor/sdk/rtos/amazon-freertos/portable" -I"../../../vendor/sdk/src" -O0 -g3 -Wall -c -fmessage-length=0 -mcpu=cortex-m7 -mfpu=fpv5-sp-d16 -mfloat-abi=hard -mthumb -D__NEWLIB__ -MMD -MP -MF"src/switch_fabric/optce_conn_mgr_port.d" -MT"src/switch_fabric/optce_conn_mgr_port.o" -MT"src/switch_fabric/optce_conn_mgr_port.d" -o "src/switch_fabric/optce_conn_mgr_port.o" "../src/switch_fabric/optce_conn_mgr_port.cpp"
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:69:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::reserve(std::vector<_Tp, _Alloc>::size_type) [with _Tp = optce::ConnMgrSpectrumUnitBase; _Alloc = std::allocator<optce::ConnMgrSpectrumUnitBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc:73:12: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
pointer __tmp = _M_allocate_and_copy(__n,
^~~~~
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:64:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_vector.h: In member function 'std::vector<_Tp, _Alloc>::pointer std::vector<_Tp, _Alloc>::_M_allocate_and_copy(std::vector<_Tp, _Alloc>::size_type, _ForwardIterator, _ForwardIterator) [with _ForwardIterator = std::move_iterator<optce::ConnMgrSpectrumUnitBase*>; _Tp = optce::ConnMgrSpectrumUnitBase; _Alloc = std::allocator<optce::ConnMgrSpectrumUnitBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_vector.h:1257:2: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
_M_allocate_and_copy(size_type __n,
^~~~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_vector.h:1257:2: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_vector.h:1263:35: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
std::__uninitialized_copy_a(__first, __last, __result,
~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
_M_get_Tp_allocator());
~~~~~~~~~~~~~~~~~~~~~~
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:69:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {optce::ConnMgrSpectrumUnitBase}; _Tp = optce::ConnMgrSpectrumUnitBase; _Alloc = std::allocator<optce::ConnMgrSpectrumUnitBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc:105:21: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
_M_realloc_insert(end(), std::forward<_Args>(__args)...);
~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {optce::ConnMgrPortBase}; _Tp = optce::ConnMgrPortBase; _Alloc = std::allocator<optce::ConnMgrPortBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc:105:21: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<optce::ConnMgrPortBase*, std::vector<optce::ConnMgrPortBase> >' changed in GCC 7.1
_M_realloc_insert(end(), std::forward<_Args>(__args)...);
~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:63:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In function '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<optce::ConnMgrSpectrumUnitBase*>; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*; _Tp = optce::ConnMgrSpectrumUnitBase]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:287:5: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
__uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:287:5: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:289:63: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
{ return std::uninitialized_copy(__first, __last, __result); }
^
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:69:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {optce::ConnMgrSpectrumUnitBase}; _Tp = optce::ConnMgrSpectrumUnitBase; _Alloc = std::allocator<optce::ConnMgrSpectrumUnitBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<optce::ConnMgrSpectrumUnitBase>::iterator {aka __gnu_cxx::__normal_iterator<optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >}' changed in GCC 7.1
vector<_Tp, _Alloc>::
^~~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {optce::ConnMgrPortBase}; _Tp = optce::ConnMgrPortBase; _Alloc = std::allocator<optce::ConnMgrPortBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<optce::ConnMgrPortBase>::iterator {aka __gnu_cxx::__normal_iterator<optce::ConnMgrPortBase*, std::vector<optce::ConnMgrPortBase> >}' changed in GCC 7.1
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:63:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In function '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<optce::ConnMgrSpectrumUnitBase*>; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:115:5: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
uninitialized_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:115:5: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:134:41: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
__uninit_copy(__first, __last, __result);
^
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In function '_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = optce::ConnMgrSpectrumUnitBase*; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*; _Allocator = std::allocator<optce::ConnMgrSpectrumUnitBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:312:69: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
_GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR(__last), __result, __alloc);
^
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<optce::ConnMgrSpectrumUnitBase*>; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*; bool _TrivialValueTypes = false]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:76:9: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
__uninit_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:76:9: note: parameter passing for argument of type 'std::move_iterator<optce::ConnMgrSpectrumUnitBase*>' changed in GCC 7.1
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:64:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_vector.h: In copy constructor 'std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = optce::ConnMgrSpectrumUnitBase; _Alloc = std::allocator<optce::ConnMgrSpectrumUnitBase>]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_vector.h:331:31: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
std::__uninitialized_copy_a(__x.begin(), __x.end(),
~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
this->_M_impl._M_start,
~~~~~~~~~~~~~~~~~~~~~~~
_M_get_Tp_allocator());
~~~~~~~~~~~~~~~~~~~~~~
In file included from c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\vector:63:0,
from ../src/switch_fabric/optce_conn_mgr_port.cpp:25:
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In function '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*; _Tp = optce::ConnMgrSpectrumUnitBase]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:287:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
__uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:287:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:289:63: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
{ return std::uninitialized_copy(__first, __last, __result); }
^
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In function '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:115:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
uninitialized_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:115:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:134:41: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
__uninit_copy(__first, __last, __result);
^
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h: In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >; _ForwardIterator = optce::ConnMgrSpectrumUnitBase*; bool _TrivialValueTypes = false]':
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:76:9: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
__uninit_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~
c:\nxp\mcuxpressoide_10.2.1_795\ide\tools\arm-none-eabi\include\c++\7.2.1\bits\stl_uninitialized.h:76:9: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const optce::ConnMgrSpectrumUnitBase*, std::vector<optce::ConnMgrSpectrumUnitBase> >' changed in GCC 7.1
Finished building: ../src/switch_fabric/optce_conn_mgr_port.cpp