This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Compiler/MSP432E401Y: Warning: Type #10457-D Use of variable-length arrays is not thread-safe.

Part Number: MSP432E401Y
Other Parts Discussed in Thread: SYSBIOS

Tool/software: TI C/C++ Compiler

I did upgraded my CCS from v9.1 to v9.3. In CCS v9.3, I built my project with compiler version TI v18.12.4.LTS and got a warning of "Type #10457-D Use of variable-length arrays is not thread-safe." 

I did not see this warning before in CCS v9.1 built with compiler TI v18.12.2.LTS and I don't see there are any veriable-length arrays in my project. Please advise. Thanks.

  • At first, I thought you were experiencing the issue described in this forum thread.  But, that problem is fixed in ARM compiler version 18.12.4.LTS.  Are you certain you use version 18.12.4.LTS?  If so, then we should handle this as a new issue.

    If it is a new issue ... Please perform the problem build from scratch.  In the Console (not Problems) view, use the Copy Build Log icon to save the build log to a text file.  Be sure to use the file extension .txt.  Then attach it to your next post.

    Thanks and regards,

    -George

  • Yes. I am using the ver 18.12.4.LTS.

    **** Build of configuration Release for project digitizer-main ****
    
    "C:\\ti\\ccs930\\ccs\\utils\\bin\\gmake" -k -j 4 all -O 
     
    Building file: "../digitizer-main.cfg"
    Invoking: XDCtools
    "C:/ti/ccsv8_3/xdctools_3_51_01_18_core/xs" --xdcpath="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source;C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages;" xdc.tools.configuro -o configPkg -t ti.targets.arm.elf.M4F -p ti.platforms.msp432:MSP432E401Y -r release -c "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS" --compileOptions "-mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path=\"C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main\" --include_path=\"C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include\" --include_path=\"C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs\" --include_path=\"C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include\" --include_path=\"C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc\" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing  " "../digitizer-main.cfg"
    making package.mak (because of package.bld) ...
    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
    configuring digitizer-main.xem4f from package/cfg/digitizer-main_pem4f.cfg ...
    generating custom ti.sysbios library makefile ... 
    Starting build of library sources ...
    making C:/VEKTRE~1/Vektrex/Trunk/SOURCE~1/PRODUC~1/DIGITI~1/Main/src/sysbios/sysbios.aem4f ...
    clem4f C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages/ti/sysbios/BIOS.c ...
    asmem4f C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages/ti/sysbios/family/arm/m3/Hwi_asm.sv7M ...
    asmem4f C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages/ti/sysbios/family/arm/m3/Hwi_asm_switch.sv7M ...
    asmem4f C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages/ti/sysbios/family/arm/m3/IntrinsicsSupport_asm.sv7M ...
    asmem4f C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages/ti/sysbios/family/arm/m3/TaskSupport_asm.sv7M ...
    arem4f BIOS.obj m3_Hwi_asm.obj m3_Hwi_asm_switch.obj m3_IntrinsicsSupport_asm.obj m3_TaskSupport_asm.obj ...
    Build of libraries done.
    clem4f package/cfg/digitizer-main_pem4f.c ...
    Finished building: "../digitizer-main.cfg"
     
            1 file(s) copied.
    making ../src/sysbios/sysbios.aem4f ...
    gmake[1]: Nothing to be done for 'all'.
    Building file: "../adc.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="adc.d_raw" --cmd_file="configPkg/compiler.opt" "../adc.c"
    "../adc.c", line 104: warning #552-D: variable "reg" was set but never used
    "../adc.c", line 216: warning #552-D: variable "receive_data" was set but never used
    Finished building: "../adc.c"
     
    Building file: "../MSP_EXP432E401Y.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="MSP_EXP432E401Y.d_raw" --cmd_file="configPkg/compiler.opt" "../MSP_EXP432E401Y.c"
    Finished building: "../MSP_EXP432E401Y.c"
     
    Building file: "../buffer.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="buffer.d_raw" --cmd_file="configPkg/compiler.opt" "../buffer.c"
    "../buffer.c", line 22: warning #552-D: variable "INDEX_ERR" was set but never used
    Finished building: "../buffer.c"
     
    Building file: "../board_storage.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="board_storage.d_raw" --cmd_file="configPkg/compiler.opt" "../board_storage.c"
    Finished building: "../board_storage.c"
     
    Building file: "../data_transfer.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="data_transfer.d_raw" --cmd_file="configPkg/compiler.opt" "../data_transfer.c"
    Finished building: "../data_transfer.c"
     
    Building file: "../digitizer-main.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="digitizer-main.d_raw" --cmd_file="configPkg/compiler.opt" "../digitizer-main.c"
    Finished building: "../digitizer-main.c"
     
    Building file: "../init.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="init.d_raw" --cmd_file="configPkg/compiler.opt" "../init.c"
    Finished building: "../init.c"
     
    Building file: "../communication.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="communication.d_raw" --cmd_file="configPkg/compiler.opt" "../communication.c"
    Finished building: "../communication.c"
     
    Building file: "../monitor.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="monitor.d_raw" --cmd_file="configPkg/compiler.opt" "../monitor.c"
    Finished building: "../monitor.c"
     
    Building file: "../post_processing.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="post_processing.d_raw" --cmd_file="configPkg/compiler.opt" "../post_processing.c"
    Finished building: "../post_processing.c"
     
    Building file: "../cJSON.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="cJSON.d_raw" --cmd_file="configPkg/compiler.opt" "../cJSON.c"
    Finished building: "../cJSON.c"
     
    Building file: "../range_switch.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="range_switch.d_raw" --cmd_file="configPkg/compiler.opt" "../range_switch.c"
    Finished building: "../range_switch.c"
     
    Building file: "../digitizer_controller.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="digitizer_controller.d_raw" --cmd_file="configPkg/compiler.opt" "../digitizer_controller.c"
    Finished building: "../digitizer_controller.c"
     
    Building file: "../libscpi/src/fifo.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/fifo.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/fifo.c"
    Finished building: "../libscpi/src/fifo.c"
     
    Building file: "../libscpi/src/error.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/error.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/error.c"
    Finished building: "../libscpi/src/error.c"
     
    Building file: "../libscpi/src/expression.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/expression.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/expression.c"
    Finished building: "../libscpi/src/expression.c"
     
    Building file: "../real_time_processing.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="real_time_processing.d_raw" --cmd_file="configPkg/compiler.opt" "../real_time_processing.c"
    Finished building: "../real_time_processing.c"
     
    Building file: "../libscpi/src/ieee488.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/ieee488.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/ieee488.c"
    Finished building: "../libscpi/src/ieee488.c"
     
    Building file: "../libscpi/src/minimal.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/minimal.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/minimal.c"
    Finished building: "../libscpi/src/minimal.c"
     
    Building file: "../libscpi/src/units.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/units.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/units.c"
    Finished building: "../libscpi/src/units.c"
     
    Building file: "../libscpi/src/lexer.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/lexer.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/lexer.c"
    Finished building: "../libscpi/src/lexer.c"
     
    Building file: "../libscpi/src/utils.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/utils.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/utils.c"
    Finished building: "../libscpi/src/utils.c"
     
    Building file: "../libscpi/src/parser.c"
    Invoking: ARM Compiler
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/Include" --include_path="C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/ti/posix/ccs" --include_path="C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/include" --include_path="C:/VEKTREX_TFS/Vektrex/Trunk/SourceCode/ProductSource/Digitizer Firmware/Main/libscpi/inc" --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing --preproc_with_compile --preproc_dependency="libscpi/src/parser.d_raw" --obj_directory="libscpi/src" --cmd_file="configPkg/compiler.opt" "../libscpi/src/parser.c"
    Finished building: "../libscpi/src/parser.c"
     
    making ../src/sysbios/sysbios.aem4f ...
    gmake[2]: Nothing to be done for 'all'.
    Building target: "digitizer-main.out"
    Invoking: ARM Linker
    "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me -O3 --opt_for_speed=5 --define=DeviceFamily_MSP432E4 --define=__MSP432E401Y__ --define=ARM_MATH_CM4 --define=__FPU_PRESENT --define=SCPI_USER_CONFIG -g --c99 --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -k --asm_listing --c_src_interlist --asm_cross_reference_listing -z -m"digitizer-main.map" -i"C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source" -i"C:/ti/simplelink_msp432e4_sdk_2_40_00_11/kernel/tirtos/packages" -i"C:/ti/ccs930/ccs/tools/compiler/ti-cgt-arm_18.12.4.LTS/lib" -i"C:/ti/simplelink_msp432e4_sdk_2_40_00_11/source/third_party/CMSIS/DSP_Lib/lib/ccs/m4f/" --diag_wrap=off --display_error_number --warn_sections --xml_link_info="digitizer-main_linkInfo.xml" --rom_model -o "digitizer-main.out" "./MSP_EXP432E401Y.obj" "./adc.obj" "./board_storage.obj" "./buffer.obj" "./cJSON.obj" "./communication.obj" "./data_transfer.obj" "./digitizer-main.obj" "./digitizer_controller.obj" "./init.obj" "./monitor.obj" "./post_processing.obj" "./range_switch.obj" "./real_time_processing.obj" "./libscpi/src/error.obj" "./libscpi/src/expression.obj" "./libscpi/src/fifo.obj" "./libscpi/src/ieee488.obj" "./libscpi/src/lexer.obj" "./libscpi/src/minimal.obj" "./libscpi/src/parser.obj" "./libscpi/src/units.obj" "./libscpi/src/utils.obj" "../MSP_EXP432E401Y_TIRTOS.cmd" -l"configPkg/linker.cmd" -l"ti/display/lib/display.aem4f" -l"ti/grlib/lib/ccs/m4f/grlib.a" -l"third_party/spiffs/lib/ccs/m4f/spiffs.a" -l"ti/drivers/lib/drivers_msp432e4.aem4f" -l"third_party/fatfs/lib/ccs/m4f/fatfs.a" -l"ti/dpl/lib/dpl_msp432e4.aem4f" -l"ti/devices/msp432e4/driverlib/lib/ccs/m4f/msp432e4_driverlib.a" -larm_cortexM4lf_math.a -llibc.a 
    <Linking>
    warning #10457-D: Use of variable-length arrays is not thread-safe.
    Finished building target: "digitizer-main.out"
     
    
    **** Build Finished ****
    

    Here is the attached build log. Thanks.

  • Because the problem happens when linking, I am forced to ask you for your entire CCS project.  Please create the zip file as described in the article Sharing Projects.  Either attach the zip to your next post, or send it to me by private message.  To send it by private message, hover your mouse over my screen name or avatar.  A box will pop up. Click on Send a private message. In the message compose interface which comes up, use the paper clip icon to attach the zip file.

    Thanks and regards,

    -George

  • Found a variable length array in the code. Remove that array and the warning is gone. What kind of threat or risks of using this type of array? 

  • The problem is that the VLA implementation code uses a couple of global variables to track VLAs, and if two threads do VLA things, those globals can be corrupted and crash the program.  Because the ARM compiler doesn't currently implement thread-local storage, we don't have a reasonable way to correct this problem, but we can detect it and warn about it.  (We may sometimes warn excessively -- see codegen-6655, fixed in 18.12.4.)

    The original report was in a private forum;  in that program an *accidental* use of VLAs in a SYSBIOS program led to a crash.