mcu_18.1_open_defects

ID Summary State Reported In Release Target Release Workaround Release Notes
CODEGEN-4339 div() and ldiv() return incorrect result when built with -o4 option Open MSP430_18.1.0.LTS
CODEGEN-4329 runtime failure; initializer_list test gets incorrect result Open MSP430_18.1.0.LTS
CODEGEN-4324 MSP std::locale::global() fails link for isblank undefined symbol Open MSP430_18.1.0.LTS
CODEGEN-4323 MSP430 floating point calculation is inconsistent Open MSP430_18.1.0.LTS
CODEGEN-4318 libcxx/include/random uses unsigned for unsigned long Open MSP430_18.1.0.LTS
CODEGEN-4308 runtime failure; unaligned access Open MSP430_18.1.0.LTS
CODEGEN-4307 cl430 generates invalid conversion error Open MSP430_18.1.0.LTS
CODEGEN-4305 Compiler aborts with excessive inlining of C++ functions Open MSP430_18.1.0.LTS
CODEGEN-4304 runtime failure on unaligned access (on some processor variants, not all) Open MSP430_18.1.0.LTS
CODEGEN-4303 Abort on using decltype(auto) to declare a type conversion operator Open MSP430_18.1.0.LTS
CODEGEN-4271 pow(complex&, int) returns complex Open MSP430_18.1.0.LTS
CODEGEN-4259 noexcept(typeid(d)) runtime fail on polymorphic class type Open MSP430_18.1.0.LTS
CODEGEN-4258 deeply nested lambda functions hang the codegen Open MSP430_18.1.0.LTS
CODEGEN-4242 error transfer of control bypasses initialization Open MSP430_18.1.0.LTS
CODEGEN-4234 No error generated for lambda-expression in default argument cannot capture any entity. Open MSP430_18.1.0.LTS
CODEGEN-4233 lambda error not emitted for missing default arg on parameter Open MSP430_18.1.0.LTS
CODEGEN-4158 TI compiler does not emit clang error: constexpr function never produces a constant expression Open MSP430_18.1.0.LTS
CODEGEN-4157 error with using constexpr for return from end() with empty std::initializer_list Open MSP430_18.1.0.LTS
CODEGEN-4124 Failure to defer access control checks Open MSP430_18.1.0.LTS
CODEGEN-4122 decltype cannot be used as a destructor name Open MSP430_18.1.0.LTS
CODEGEN-4090 Unimplemented core issue 475: std::uncaught_exception is not true when constructing the thrown object Open MSP430_18.1.0.LTS
CODEGEN-4087 wostringstream::fill(WCHAR_MAX) incorrectly sets the fill value to ' 'L. Accepted MSP430_18.1.0.LTS
CODEGEN-4076 Exception which propagates out of destructor does not result in std::terminate Open MSP430_18.1.0.LTS
CODEGEN-4072 Unimplemented core issue 1769: Catching a thrown derived class by reference to base clas Open MSP430_18.1.0.LTS
CODEGEN-4069 incomplete type not allowed error from parser Open MSP430_18.1.0.LTS
CODEGEN-4044 libcxx istreambuf_iterator points to end of string instead of character past match Planned MSP430_18.1.0.LTS
CODEGEN-4035 no error emitted for pointer subtraction to class member arrays Open MSP430_18.1.0.LTS
CODEGEN-4034 missing diagnostic for undefined virtual function table Open MSP430_18.1.0.LTS
CODEGEN-4026 Non-standard partial ordering of variadic template partial specialization Open MSP430_18.1.0.LTS
CODEGEN-4002 Undefined behavior on lambda capturing constexpr by reference Open MSP430_18.1.0.LTS
CODEGEN-4001 Unimplemented core issue 588: Unqualified name lookup examines dependent base class Open MSP430_18.1.0.LTS
CODEGEN-4000 Core 1601: Overload resolution for enum with fixed type Open MSP430_18.1.0.LTS
CODEGEN-3999 Unimplemented core issue 1374: Conversion sequence ranks qualification before reference binding Open MSP430_18.1.0.LTS
CODEGEN-3998 Unimplemented core issue 1951: cv-qualified void and scalar types are not literal types Open MSP430_18.1.0.LTS
CODEGEN-3993 Constant initialiation may take place before dynamic initialization Open MSP430_18.1.0.LTS
CODEGEN-3978 std::is_trivially_copyable incorrectly fails for volatile Open MSP430_18.1.0.LTS
CODEGEN-3966 slice_array assignment failures Open MSP430_18.1.0.LTS
CODEGEN-3965 Invalid conversion on static_cast from T1 to rvalue reference of T2 Open MSP430_18.1.0.LTS
CODEGEN-3964 Unimplemented core issue 1467: Overloads and initializations with single-element initializer_list Open MSP430_18.1.0.LTS
CODEGEN-3963 Unimplemented core issue 591: Name lookup in dependent base class that is also the current instantiation Open MSP430_18.1.0.LTS
CODEGEN-3962 Core Issue 1804 unimplemented: friend declaration does not apply to class template specializations Open MSP430_18.1.0.LTS
CODEGEN-3961 Pack expansion in template parameter list fails Open MSP430_18.1.0.LTS
CODEGEN-3951 Spurious error on bypassing initialization of trivially constructible objects Open MSP430_18.1.0.LTS
CODEGEN-3948 Spurious syntax error on alignas in alias declaration Open MSP430_18.1.0.LTS
CODEGEN-3947 Spurious error on unevaluated use of undefined constexpr function Open MSP430_18.1.0.LTS
CODEGEN-3946 Spurious error on global qualifier of struct template Open MSP430_18.1.0.LTS
CODEGEN-3901 std::nullptr_t cannot be used to initialize entity of type bool Open MSP430_18.1.0.LTS
SDSCM00052531 Incorrect value assigned to a forward reference of a symbol defined in terms of the section's PC ($) after jump expansion Open MSP430_18.1.0.LTS Two workarounds are possible: 1) Use a label to get the value of the PC at a key location instead of "symbol .equ $" 2) Replace the jump that will be expanded with an already expanded form. In the example, the jump could be replaced with: JLO $+6 BR label1
CODEGEN-1295 MSP430 RTS rint() double routines failing for some inputs Open MSP430_18.1.0.LTS Avoid using the rint() RTS routines with double arguments and instead use the corresponding rint() float routines. MSP430 RTS routines rint() rintl() lrint() lrintl() llrint() llrintl() failing for some inputs with double arguments.
SDSCM00051908 Print a more friendly message when using a lnk.cmd with too large memory Accepted MSP430_18.1.0.LTS
SDSCM00050131 Local struct with non-constant initializer treated as static scope variable Accepted MSP430_18.1.0.LTS
SDSCM00049280 Ill advised enum scalar usage gets MISRA diagnostic, but similar usage of enum array does not Open MSP430_18.1.0.LTS
SDSCM00049278 Array that is correctly initialized erroneously gets a MISRA diagnostic about size not being specified Open MSP430_18.1.0.LTS
SDSCM00047833 msp C++ cpp compiled with printf_support=minimal causes cout to output incorrect results Accepted MSP430_18.1.0.LTS Instead either compile without --printf_support, or choose options nofloat or full.
SDSCM00046695 Floating point addition rounding error Accepted MSP430_18.1.0.LTS
SDSCM00046115 MSP430 RTS float arithmetic functions do not round correctly Open MSP430_18.1.0.LTS
SDSCM00046113 C2000 RTS float arithmetic functions do not round correctly Open MSP430_18.1.0.LTS
SDSCM00044526 Compiler emits bogus DW_OP_reg16 for split argument Accepted MSP430_18.1.0.LTS
SDSCM00040934 Structure is not initialized correctly when using -o2 or -o3 optimization Accepted MSP430_18.1.0.LTS The initialization will have to be done at run-time, through a __sti initialization routine. You can see this routine when compiling without optimization. To workaround the compiler removing this initialization routine, initialize the object at the beginning of main: Info2.mSize = ((unsigned)_end_isr_stack - (unsigned)_start_isr_stack);
SDSCM00038293 Relocation overflows for BIT instruction using 20-bit pointer Accepted MSP430_18.1.0.LTS
SDSCM00038178 Should forbid non-const objects larger than 64k in large model if --near_data=globals Accepted MSP430_18.1.0.LTS
SDSCM00018691 Linker gives misleading warning when dot expressions used in SECTION directive for .stack section Accepted MSP430_18.1.0.LTS
SDSCM00014430 calloc doesn't check arguments to make sure the requested size is reasonable Accepted MSP430_18.1.0.LTS
SDSCM00008685 DWARF does not correctly represent variables stored in register pairs Accepted MSP430_18.1.0.LTS Although 'var1' and 'var2' are shown to be in single registers, a debugger could determine that they are actually stored in register pairs by looking at the type of the variables: [00000113] DW_TAG_base_type DW_AT_name long long DW_AT_encoding 0x5 DW_AT_byte_size 0x8 The base type indicates that the size of the variables is 0x8 bytes. Since a single register can only store 0x4 bytes of information, it would take two registers to hold this values. On TI architectures, values stored in multiple registers are always stored in consecutive registers. Thus, the debugger would know that if the entire value could not fit in A4, the rest of the value must be in A5. A5 would contain the upper 32 bits of the value.
SDSCM00008652 pow(2,x) has fairly significant rounding error Accepted MSP430_18.1.0.LTS Please describe the workaround for this problem.
SDSCM00008630 printf gives wrong value for pointer when its value is incremented Open MSP430_18.1.0.LTS To get rid of the warning message modify the printf statement as follows: printf('0x%lx\n', 0x10000 + (t=(long int)&global_var)); This modified code executes correctly too.
SDSCM00008543 Forward reference in .space generates an internal error Accepted MSP430_18.1.0.LTS none
SDSCM00008248 Compilers on PC will not work without TMP set Accepted MSP430_18.1.0.LTS Set the TMP environment variable, even if just set to . (current directory)

Generated on Fri Jan 26 11:19:32 2018