1570af302Sopenharmony_ci// commit: 26031da0f83a2a3ed52190077931ee6c18dfd689 2011-02-20 2570af302Sopenharmony_ci// malloc(0) should return unique pointers 3570af302Sopenharmony_ci// (often expected and gnulib replaces malloc if malloc(0) returns 0) 4570af302Sopenharmony_ci#include <stdlib.h> 5570af302Sopenharmony_ci#include "test.h" 6570af302Sopenharmony_ci 7570af302Sopenharmony_ciint main(void) 8570af302Sopenharmony_ci{ 9570af302Sopenharmony_ci void *p = malloc(0); 10570af302Sopenharmony_ci void *q = malloc(0); 11570af302Sopenharmony_ci void *r = malloc(0); 12570af302Sopenharmony_ci if (!p || !q || !r) 13570af302Sopenharmony_ci t_error("malloc(0) returned NULL\n"); 14570af302Sopenharmony_ci if (p == q || p == r || q == r) 15570af302Sopenharmony_ci t_error("malloc(0) returned non-unique pointers: %p, %p, %p\n", p, q, r); 16570af302Sopenharmony_ci free(q); 17570af302Sopenharmony_ci free(p); 18570af302Sopenharmony_ci free(r); 19570af302Sopenharmony_ci return t_status; 20570af302Sopenharmony_ci} 21