X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fregression%2Fpointer1.c;h=23075b42074f67cf3b426c2a6a209b9da03557fb;hb=ae36c610fdb3dfcd4d850c6fe0bf193bd0e455db;hp=7b0cbc2ea5a11a84672fbe26cc2d270b1bece5b9;hpb=16f76cd3859f1674d2296a9600a2b662bb3b30ab;p=fw%2Fsdcc diff --git a/src/regression/pointer1.c b/src/regression/pointer1.c index 7b0cbc2e..23075b42 100644 --- a/src/regression/pointer1.c +++ b/src/regression/pointer1.c @@ -1,64 +1,134 @@ -//#include "p16c84.h" +#include "gpsim_assert.h" + // Pointer tests -unsigned char success=0; -unsigned char failures=0; -unsigned char dummy=0; +unsigned char failures = 0; +unsigned char dummy; -bit bit0 = 0; unsigned int aint0 = 0; unsigned int aint1 = 0; unsigned char achar0 = 0; unsigned char achar1 = 0; unsigned char *acharP = 0; -void done() +unsigned char buff[10]; + +void +done() +{ + ASSERT(MANGLE(failures) == 0); + PASSED(); +} + +void +f1 (unsigned char *ucP) { - dummy++; + if (ucP == 0) + { + failures++; + return; + } + if (*ucP) + failures++; } -void f1(unsigned char *ucP) +void +f2 (unsigned int *uiP) { - if(ucP==0) { + if (uiP == 0) + { + failures++; + return; + } + + if (*uiP) failures++; - return; - } - if(*ucP) - failures++; } -void f2(unsigned int *uiP) + +unsigned char * +f3 (void) { - if(uiP==0) { + return &achar0; +} + + +void f4(unsigned char *ucP, unsigned char uc) +{ + + if(!ucP) { failures++; return; } - if(*uiP) + if(*ucP != uc) failures++; } -unsigned char *f3(void) +void init_array(char start_value) { + unsigned char c; + + for(c=0; c