Blame lib/xalloc-die.c

Packit 6e6f77
/* Report a memory allocation failure and exit.
Packit 6e6f77
Packit 6e6f77
   Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2018 Free Software
Packit 6e6f77
   Foundation, Inc.
Packit 6e6f77
Packit 6e6f77
   This program is free software: you can redistribute it and/or modify
Packit 6e6f77
   it under the terms of the GNU General Public License as published by
Packit 6e6f77
   the Free Software Foundation; either version 3 of the License, or
Packit 6e6f77
   (at your option) any later version.
Packit 6e6f77
Packit 6e6f77
   This program is distributed in the hope that it will be useful,
Packit 6e6f77
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 6e6f77
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 6e6f77
   GNU General Public License for more details.
Packit 6e6f77
Packit 6e6f77
   You should have received a copy of the GNU General Public License
Packit 6e6f77
   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
Packit 6e6f77
Packit 6e6f77
#include <config.h>
Packit 6e6f77
Packit 6e6f77
#include "xalloc.h"
Packit 6e6f77
Packit 6e6f77
#include <stdlib.h>
Packit 6e6f77
Packit 6e6f77
#include "error.h"
Packit 6e6f77
#include "exitfail.h"
Packit 6e6f77
Packit 6e6f77
#include "gettext.h"
Packit 6e6f77
#define _(msgid) gettext (msgid)
Packit 6e6f77
Packit 6e6f77
void
Packit 6e6f77
xalloc_die (void)
Packit 6e6f77
{
Packit 6e6f77
  error (exit_failure, 0, "%s", _("memory exhausted"));
Packit 6e6f77
Packit 6e6f77
  /* _Noreturn cannot be given to error, since it may return if
Packit 6e6f77
     its first argument is 0.  To help compilers understand the
Packit 6e6f77
     xalloc_die does not return, call abort.  Also, the abort is a
Packit 6e6f77
     safety feature if exit_failure is 0 (which shouldn't happen).  */
Packit 6e6f77
  abort ();
Packit 6e6f77
}