libc/winsup/cygwin/cygwin-cxx.h

36 lines
1011 B
C++

/* cygwin-cxx.h
This file is part of Cygwin.
This software is a copyrighted work licensed under the terms of the
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */
#ifndef _CYGWIN_CXX_H
#define _CYGWIN_CXX_H
#ifndef __cplusplus
#error This header should not be included by C source files.
#endif
/* Files including this header must override -nostdinc++ */
#include <new>
/* This is an optional struct pointed to by per_process if it exists. */
struct per_process_cxx_malloc
{
void *(*oper_new) (std::size_t);
void *(*oper_new__) (std::size_t);
void (*oper_delete) (void *);
void (*oper_delete__) (void *);
void *(*oper_new_nt) (std::size_t, const std::nothrow_t &);
void *(*oper_new___nt) (std::size_t, const std::nothrow_t &);
void (*oper_delete_nt) (void *, const std::nothrow_t &);
void (*oper_delete___nt) (void *, const std::nothrow_t &);
};
/* Defined in cxx.cc */
extern struct per_process_cxx_malloc default_cygwin_cxx_malloc;
#endif /* _CYGWIN_CXX_H */