/* test of plausible behaviour with malloc and stupid args */
#include <stdlib.h>
#include <stdio.h>
int main ( void )
{
char* p;
p = malloc(0);
printf("malloc(0) = 0x%lx\n", (unsigned long)p);
free(p);
p = malloc(-1);
printf("malloc(-1) = 0x%lx\n", (unsigned long)p);
free(p);
p = calloc(0,1);
printf("calloc(0,1) = 0x%lx\n", (unsigned long)p);
free(p);
p = calloc(0,-1);
printf("calloc(0,-1) = 0x%lx\n", (unsigned long)p);
free(p);
// We no longer get a warning with this due to the calloc overflow checking
// done for bug 149878. It's no great loss, it's extremely unlikely to
// occur in practice.
p = calloc(-1,-1);
printf("calloc(-1,-1) = 0x%lx\n", (unsigned long)p);
free(p);
return 0;
}