* .version: bumped version number to 2.4.5
[fw/sdcc] / src / SDCCsymt.c
index fe717e90001655c742a3e69fed8f23eea370b8c6..2b39b153e9054a3622716090650a8adba568692e 100644 (file)
@@ -2470,12 +2470,17 @@ processFuncArgs (symbol * func)
     }
 
   /* reset regparm for the port */
-  (*port->reset_regparms) ();
+  (*port->reset_regparms) ( func );
   /* if any of the arguments is an aggregate */
   /* change it to pointer to the same type */
   while (val)
     {
-        int argreg = 0;
+      int argreg = 0;
+      char buffer[SDCC_NAME_MAX+1];
+      
+      SNPRINTF (buffer, sizeof(buffer), "%s parameter %d", func->name, pNum);
+      checkTypeSanity (val->etype, buffer);
+      
       /* mark it as a register parameter if
          the function does not have VA_ARG
          and as port dictates */