From owner-freebsd-standards@FreeBSD.ORG Mon Mar 1 08:37:41 2004 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B6DC616A4CE; Mon, 1 Mar 2004 08:37:41 -0800 (PST) Received: from critter.freebsd.dk (critter.freebsd.dk [212.242.86.163]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB56E43D39; Mon, 1 Mar 2004 08:37:40 -0800 (PST) (envelope-from phk@phk.freebsd.dk) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.12.11/8.12.11) with ESMTP id i21GbVJ4059774; Mon, 1 Mar 2004 17:37:32 +0100 (CET) (envelope-from phk@phk.freebsd.dk) To: David Schultz From: "Poul-Henning Kamp" In-Reply-To: Your message of "Mon, 01 Mar 2004 08:00:22 PST." <20040301160022.GA13617@VARK.homeunix.com> Date: Mon, 01 Mar 2004 17:37:31 +0100 Message-ID: <59773.1078159051@critter.freebsd.dk> cc: stefan@fafoe.narf.at cc: freebsd-standards@FreeBSD.ORG Subject: Re: standards/62858: malloc(0) not C99 compliant X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2004 16:37:41 -0000 In message <20040301160022.GA13617@VARK.homeunix.com>, David Schultz writes: >On Mon, Mar 01, 2004, Poul-Henning Kamp wrote: >> In message , Dag-Erling =?iso-8859-1?q?Sm=F8rgrav?= >> writes: >> >Poul-Henning Kamp writes: >> >> This is a deliberate choice. Handling zero-size pointers correctly >> >> in malloc(3) would be a rather involved and is currently not high >> >> on the todolist. A good patch might change that. >> > >> >The standard does allow returning NULL, you know. >> >> Yes, but unfortunately that broke more software than I cared for >> arguing with authors about. > >Several other malloc implementations do this, including the one in >Tru64. But assuming that there really are lots of broken >applications out there, what's wrong with simply converting >malloc(0) calls to malloc(1) calls? I want to make sure people who malloc(0) and then deref the pointer get the core dump they need to debug their problem. But lets turn this around, do you have evidence of code which breaks with the current behaviour ? Does the code also fail if you give malloc the 'V' flag ? -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.