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: ARM C/C++ Code Generation Tools Segmentation fault

Tool/software: TI C/C++ Compiler

Hello,

we are using TI ARM C/C++ CODE GENERATION TOOLS v5.1.6.

We are trying to compile a C++ code, which leads to a segmentation fault:

compiling application files: src/Test.cpp

INTERNAL ERROR: C:\TI\CSS\ccsv7\tools\compiler\arm_5.1.6\bin\armacpia.exe experienced a segmentation fault
                  while processing function operator- file C:\TI\CSS\ccsv7\tools\compiler\arm_5.1.6\bin\..\include\xutility line 1026

This is a serious problem.  Please contact Customer
Support with this message and a copy of the input file
and help us to continue to make the tools more robust.


>> Compilation failure
make: *** [build/appcpp_Test.obj] Error 1


Please provide help.


  • To understand what happened, we need to reproduce it.  Please submit a test case as described in How to Submit a Compiler Test Case.

    Thanks and regards,

    -George

  • After some tests we have figured out that with v16.9.3.LTS the code is working.

  • Hi George,

    here's some additional information regarding this topic: If we remove the --check_misra=none compiler option and add the --relaxed_ansi option the c++ file can be compiled. However, the resulting program cannot be executed as it seems that the function call to __TI_auto_init() in the start up code causes a jump to address 0 starting all over again. We do not know if this problem is related to the original problem.

    Here's the Makefile project:

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/81/7848.project.7z

    We are using TI ARM C/C++ Compiler v5.1.6 together with the following options:

    -mv7R4
    --code_state=32
    --float_support=VFPv3D16
    --fp_mode=strict
    --endian=big
    --c++03
    --diag_warning=225
    --diag_wrap=off
    --display_error_number
    --abi=eabi
    --opt_level=0
    --symdebug:dwarf
    --check_misra=none
    -dDEBUG
    -dCSM_DEBUG
    --symdebug:dwarf_version=2

    This is the preprocessed source file that causes the troubles:

    base_coordControl.txt

    Thanks for your support. Please let us know if you need additional information.

    Best regards,

    Stefan 

  • Thank you for sending in a test case.  I can reproduce the problem.  I filed CODEGEN-2353 in the SDOWP system to have this addressed.  You are welcome to follow it with the SDOWP link below in my signature.  I also verified this is fixed in version 16.9.x.LTS releases.  

    To be honest, I am not sure what will happen with this one.  It is reported against a set of compiler releases (5.1.x) that is no longer maintained.  And it does not occur in the compiler releases available now.  It will not get a high priority, and it is possible it may never be addressed.

    Thanks and regards,

    -George

  • Thanks a lot George,

    switching to a new compiler version is not that easy for us. But I guess it's about time to upgrade to version 16.9.x.LTS.

    Best regards,
    Stefan
  • Defect report CODEGEN-2353 has been rejected for two reasons:

    1) MISRA checking is not meant to be run on C++ code.
    2) The symptom does not occur in any active release branch.

    It is true that it CODEGEN-2353 is a bug, but unless it starts happening in an active branch, we aren't going to address it. (We suspect the bug may have already been fixed, but it would be a significant amount of work to track this down.) Additionally, because there is a workaround (don't use --check_misra on C++ code), it would be a low-priority fix.

    I agree with George that you should upgrade to an LTS release. At this time the best choice is 16.9.3.LTS
  • Hello,

        i want to ask you what specific version of CCS7 has arm_5.1.6 of compiler? Because i need arm_5.1.6 to restore an experiment.

        Thank you very much!

  • When CCS is released, it comes bundled with a set of TI compilers that are available at that time.  But those compilers can be upgraded as newer versions become available.  The reverse can also occur: You can use older compilers, within a reasonable time frame of a few years.  See more on this topic in the article Changing Compiler Versions.

    Thanks and regards,

    -George