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.

INTERNAL ERROR: Decomposition error

Dear readers,

i am tryng to migrate my project from IAR v5.20 to CCS V6 ,my target is MSP430F2xxx ,when i build my project i found this  :

--advice:power=all -g --define=__MSP430F2274__ --diag_warning=225 --diag_wrap=off --display_error_number --printf_support=minimal --preproc_with_compile --preproc_dependency="COMMON/printf.pp" --obj_directory="COMMON" "../COMMON/printf.c"
>> ../COMMON/printf.c, line 135: INTERNAL ERROR: Decomposition error

this where the error appears  (line 135)

void tfp_printf(char *fmt, ...)
{
va_list va;
char ch;
char* p;

va_start(va,fmt);

while ((ch=*(fmt++))) {
if (ch!='%') {
putchar(ch);
}
else {
char lz=0;
char w=0;
ch=*(fmt++);
if (ch=='0') {
ch=*(fmt++);
lz=1;
}
if (ch>='0' && ch<='9') {
w=0;
while (ch>='0' && ch<='9') {
w=(((w<<2)+w)<<1)+ch-'0';
ch=*fmt++;
}
}
bf=buf;
p=bf;
zs=0;
switch (ch) {
case 0:
goto abort;
case 'u':
case 'd':
case 'i':
num=va_arg(va, unsigned int);
if (((ch=='d')||(ch=='i')) && (int)num<0) {
num = -(int)num;
out('-');
}
divOut(10000);
divOut(1000);
divOut(100);
divOut(10);
outDgt(num);
break;
case 'x':
case 'X' :
uc= ch=='X';
num=va_arg(va, unsigned int);
divOut(0x1000);
divOut(0x100);
divOut(0x10);
outDgt(num);
break;
case 'c' :
out((char)(va_arg(va, int)));
break;
case 's' :
p=va_arg(va, char*);
break;
case '%' :
out('%');
default:
break;
}
*bf=0;
bf=p;                               /*----------------------------------------------------------------------------------- line 135 -----------------------------------------------------------------------------*/
while (*bf++ && w > 0)
w--;
while (w-- > 0)
putchar(lz ? '0' : ' ');
while ((ch= *p++))
putchar(ch);
}
}
abort:;
va_end(va);
}

what is the solution of this internal error , any suggestions plz  ?

Regards

  • Thanks for the effort.  But I cannot build this test case.  I have to guess at what header files it needs, the definition of variables like buf, num, and other similar things.  And at the end of all that, I probably will not reproduce the error.  Please follow this problem at this thread instead.

    Thanks and regards,

    -George