[EXT_EP-11457] Compiler hangs on compile-time access of non-zero indices Created: 14/Sep/23 Updated: 09/May/24 Resolved: 10/Oct/23 |
|
Status: | Fixed |
Project: | Embedded Software & Tools |
Component/s: | None |
Affects Version/s: | None |
Fix Version/s: | None |
Type: | Bug | Priority: | Medium |
Reporter: | TI User | Assignee: | TI User |
Resolution: | Fixed | Votes: | 0 |
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified |
Product: | Code Generation Tools |
Internal ID: | CODEGEN-11515 |
Forum URL: | https://e2e.ti.com/support/sensors-group/sensors/f/1023/t/1270037 |
Found In Release: | ARM_20.2.7.LTS C2000_22.6.0.LTS C6000_8.3.0 MSP430_20.2.0.LTS C7000_2.1.0.LTS PRU_2.3.0 C7000_3.1.0.LTS MSP430_21.6.0.B1 C2000_21.6.0.B1 C2000_20.2.0.LTS |
Fix In Release: | MSP430_20.2.8.LTS* C7000_2.1.3.LTS* MSP430_21.6.2.LTS* C7000_3.1.1.LTS C2000_22.6.2.LTS* C6000_8.3.13 ARM_20.2.8.LTS* C2000_NEXT* PRU_2.3.4* C7000_4.1.0.LTS C2000_21.6.2.LTS* |
Affected Platform/Device: | default |
Release Notes: | static_assert(x,y) examines x to determine whether it can be shown to be true at compile time. If x is an expression involving a variable, it must examine the definition of that variable to determine if it has a known value at compile time. If that variable is defined in terms of another variable, it too must be examined, and so on. If at any point in this chain of definitions one of the variables is a multi-dimensional array, the compiler will probably enter an infinite loop trying to evaluate the static assertion. |
Description |
This test case enters an infinite loop attempting to evaluate a static_assert involving an object ultimately initialized from a multi-dimensional array. static_assert(x,y) examines x to determine whether it can be shown to be true at compile time. If x is an expression involving a variable, it must examine the definition of that variable to determine if it has a known value at compile time. If that variable is defined in terms of another variable, it too must be examined, and so on. If at any point in this chain of definitions one of the variables is a multi-dimensional array, the compiler will probably enter an infinite loop trying to evaluate the static assertion. |