/* !!DESCRIPTION!! Pointer tests !!ORIGIN!! SDCC regression tests !!LICENCE!! GPL, read COPYING.GPL */ #include #include unsigned char success = 0; unsigned char failures = 0; unsigned char dummy = 0; #ifdef SUPPORT_BIT_TYPES bit bit0 = 0; #endif unsigned int aint0 = 0; unsigned int aint1 = 0; unsigned char achar0 = 0; unsigned char achar1 = 0; unsigned char *acharP = 0; char buff[10]; void done () { dummy++; } void f1 (unsigned char *ucP) { if (ucP == 0) { failures++; return; } if (*ucP) failures++; } void f2 (unsigned int *uiP) { if (uiP == 0) { failures++; return; } if (*uiP) failures++; } unsigned char * f3 (void) { return &achar0; } void f4(unsigned char *ucP, unsigned char uc) { if(!ucP) { failures++; return; } if(*ucP != uc) failures++; } void init_array(char start_value) { unsigned char c; for(c=0; c