[EXT_EP-10674] Using a compound statement inside parenthesis in C++ causes the compiler to fail with INTERNAL ERROR: ac2000 experienced a segmentation fault Created: 10/Dec/21  Updated: 06/Jan/22  Resolved: 06/Jan/22

Status: Declined
Project: Embedded Software & Tools
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Not Prioritized
Reporter: TI User Assignee: TI User
Resolution: Duplicate Votes: 0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Product: Code Generation Tools
Internal ID: CODEGEN-9517
Forum URL: https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/171/t/1061196
Found In Release: C2000_21.12.0.STS
C2000_21.6.0.LTS
Affected Platform/Device: default
Decline Reason: Duplicate of CODEGEN-4942

 Description   

The attached file.cpp has these lines ...

#define functionmacro(datatype, value1)      \
({                                           \
   datatype return_value;                    \
                                             \
   if (value1 == 1)                          \
   {                                         \
             return_value = value1;          \
   }                                         \
   else if (value1 == 2)                     \
   {                                         \
       return_value = value1+2;              \
   }                                         \
   else                                      \
   {                                         \
     return_value = value1 - 2;              \
   }                                         \
   return_value;                             \
})

Build it ...

% cl2000 file.cpp

INTERNAL ERROR: ac2000 experienced a segmentation fault
                  while processing function fxn file file.cpp line 24

This is caused by a defect in the TI C/C++ Parser.
TI Customer Support may be able to suggest a workaround to avoid this.

Upgrading to the newest version of the compiler may fix this problem.

Contact TI in the E2E support forums at http://e2e.ti.com under
"Development Tools", "TI C/C++ Compiler".  See the link titled
"Submitting an issue".

We need to see this ENTIRE error message and a complete, reproducible
test case including ALL of the command-line options.
Include the .pp file created by option --preproc_with_comment


>> Compilation failure

Generated at Sat Dec 13 11:34:49 CST 2025 using Jira 10.3.7#10030007-sha1:a563685562f94d165eb4e158cfb2a142338d8c54.