* Makefile.in, configure.in, configure,
[fw/sdcc] / src / regression / pointer1.c
index 67faf00b97caa31b213e8bdf7da6c828178cddf2..23075b42074f67cf3b426c2a6a209b9da03557fb 100644 (file)
@@ -1,27 +1,23 @@
-#define __16F873
-#include "p16f873.h"
+#include "gpsim_assert.h"
 
 // Pointer tests
 
-unsigned char success = 0;
 unsigned char failures = 0;
-unsigned char dummy = 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;
 
-char buff[10];
+unsigned char buff[10];
 
 void
-done ()
+done()
 {
-
-  dummy++;
-
+  ASSERT(MANGLE(failures) == 0);
+  PASSED();
 }
 
 void
@@ -53,6 +49,7 @@ f2 (unsigned int *uiP)
 
 }
 
+
 unsigned char *
 f3 (void)
 {
@@ -60,6 +57,7 @@ f3 (void)
   return &achar0;
 }
 
+
 void f4(unsigned char *ucP, unsigned char uc)
 {
 
@@ -94,12 +92,11 @@ void check_array(char base_value)
 
 void index_by_pointer(unsigned char *index, unsigned char expected_value)
 {
-
   if(buff[*index] != expected_value)
     failures++;
-
 }
 
+
 void
 main (void)
 {
@@ -110,7 +107,6 @@ main (void)
   if(buff[achar0 + 7] != 4+7)
     failures++;
 
-  //  dummy = buff[5];
   dummy = buff[achar0];
 
   if(dummy != 4)
@@ -127,10 +123,12 @@ main (void)
   acharP = f3 ();
   if ((acharP == 0) || (*acharP))
     failures++;
+  achar0 = 42;
+  if(*acharP != 42)
+    failures++;
 
   achar0 = 5;
   f4(&achar0, achar0);
 
-  success = failures;
   done ();
 }