libc/winsup/cygwin/cygwin-cxx.h
Corinna Vinschen 6e623e9320 Switching the Cygwin DLL to LGPLv3+, dropping commercial buyout option
Bump GPLv2+ to GPLv3+ for some files, clarify BSD 2-clause.

Everything else stays under GPLv3+.

New Linking Exception exempts resulting executables from LGPLv3 section 4.

Add CONTRIBUTORS file to keep track of licensing.

Remove 'Copyright Red Hat Inc' comments.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-23 10:09:17 +02:00

36 lines
1,011 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 */