--- parser3/src/include/pa_config_includes.h 2012/06/09 10:55:35 1.35 +++ parser3/src/include/pa_config_includes.h 2025/08/01 16:14:44 1.78 @@ -1,8 +1,8 @@ /** @file Parser: includes all Configure-d headers - Copyright (c) 2001-2012 Art. Lebedev Studio (http://www.artlebedev.com) - Author: Alexandr Petrosian (http://paf.design.ru) + Copyright (c) 2001-2024 Art. Lebedev Studio (http://www.artlebedev.com) + Authors: Konstantin Morshnev , Alexandr Petrosian when used Configure [HAVE_CONFIG_H] it uses defines from Configure, fixed otherwise. @@ -11,148 +11,159 @@ #ifndef PA_CONFIG_INCLUDES_H #define PA_CONFIG_INCLUDES_H -#if _MSC_VER -# pragma warning(disable:4291) // disable warning -// "no matching operator delete found; memory will not be freed if initialization throws an exception -#endif - #if HAVE_CONFIG_H -# include "pa_config_auto.h" +# include "pa_config_auto.h" #else -# include "pa_config_fixed.h" +# include "pa_config_fixed.h" #endif -#ifdef __cplusplus -# undef inline +// AC_INCLUDES_DEFAULT + +#ifdef HAVE_STDIO_H +# include #endif -#ifdef HAVE_ASSERT_H -# include +#ifdef HAVE_SYS_TYPES_H +# include #endif -#ifdef HAVE_CTYPE_H -# include +#ifdef HAVE_SYS_STAT_H +# include #endif -#ifdef HAVE_ERRNO_H -# include +#ifdef HAVE_STDLIB_H +# include #endif -#ifdef HAVE_FCNTL_H -# include +#ifdef HAVE_STDDEF_H +# include #endif -#ifdef HAVE_IO_H -# include +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include #endif -#ifdef HAVE_PROCESS_H -# include +#ifdef HAVE_STRINGS_H +# include #endif -#ifdef HAVE_STDARG_H -# include +#ifdef HAVE_INTTYPES_H +# include #endif -#ifdef HAVE_STDDEF_H -# include +#ifdef HAVE_STDINT_H +# include #endif -#ifdef HAVE_STDIO_H -# include +#ifdef HAVE_UNISTD_H +# include #endif -#ifdef HAVE_SYS_STAT_H -# include +// other includes + +#ifdef HAVE_ASSERT_H +# include #endif -#if defined(HAVE_UNISTD_H) && !defined(NO_UNISTD_H) -# include +#ifdef HAVE_LIMITS_H +# include +#endif + +#ifdef HAVE_CTYPE_H +# include #endif #ifdef HAVE_MATH_H -# include +# include #endif -#include +#ifdef HAVE_PROCESS_H +# include +#endif -#ifdef HAVE_STRING_H -# include +#ifdef HAVE_STDARG_H +# include #endif -#ifdef HAVE_LIMITS_H -#include +#ifdef HAVE_SETJMP_H +# include #endif -#ifdef HAVE_DIRECT_H -# include +#ifdef HAVE_SIGNAL_H +# include #endif -#ifdef HAVE_SETJMP_H -# include +#ifdef HAVE_PTHREAD_H +# include #endif -#ifdef HAVE_MEMORY_H -# include +#ifdef HAVE_ERRNO_H +# include #endif -#ifdef HAVE_NEW -#include +#ifdef HAVE_DIRENT_H +# include #endif -#ifdef HAVE_SYS_FILE_H -#include +#ifdef HAVE_FCNTL_H +# include #endif -#ifdef HAVE_SYS_LOCKING_H -#include +#ifdef HAVE_IO_H +# include #endif -#ifdef HAVE_SYS_TYPES_H -#include +#ifdef HAVE_SYS_FILE_H +# include #endif -#ifdef HAVE_SYS_SELECT_H -#include +#ifdef HAVE_SYS_LOCKING_H +# include #endif -#ifdef HAVE_SIGNAL_H -#include +#ifdef HAVE_SYS_SELECT_H +# include #endif -#ifdef HAVE_SYS_SOCKET_H -# include -#else -# if defined(HAVE_WINSOCK_H) && !defined(_MSC_VER) && !defined(CYGWIN) -# include -# endif +#ifdef HAVE_SYS_RESOURCE_H +# include #endif -// must go anywhere after winsock [cygwin time.h checks for already inclusion of winsock.h] -#if TIME_WITH_SYS_TIME -# include -# include -#else -# ifdef HAVE_SYS_TIME_H -# include -# else -# include -# endif +#ifdef HAVE_SYS_WAIT_H +# include #endif +#ifdef HAVE_SYS_SOCKET_H +# include +#endif + #ifdef HAVE_NETINET_IN_H -#include +# include #endif #ifdef HAVE_ARPA_INET_H -#include +# include #endif #ifdef HAVE_NETDB_H -#include +# include +#endif + +#ifdef HAVE_SYS_TIME_H +# include #endif +#ifdef HAVE_TIME_H +# include +#endif + +#ifdef HAVE_PCRE2 +#define PCRE2_CODE_UNIT_WIDTH 8 +#endif // math function replacements @@ -171,77 +182,81 @@ inline double sign(double param) { retur #endif #if !defined(max) -inline int max(int a, int b) { return a>b?a:b; } -inline int min(int a, int b){ return ab?a:b; } -inline size_t min(size_t a, size_t b){ return ab ? a : b; } +inline int min(int a, int b){ return ab ? a : b; } +inline size_t min(size_t a, size_t b){ return a= 7) +#pragma GCC diagnostic ignored "-Wimplicit-fallthrough" // case without break + #endif -/// to debug backtrace pointers switch this on: -#if defined(_DEBUG) || defined(PA_RELEASE_ASSERTS) -//// this switches on straightforward realloc implementation, bad for profiling -//// note: this is incompatible with -DGC_ASSERTIONS, which can be switched ON in win32/gc/NT_THREADS_MAKEFILE -#define GC_DEBUG +#ifdef _MSC_VER +// VS 2003 +#pragma warning(disable:4355) // using this in calls to parent constructors +#pragma warning(disable:4291) // no matching operator delete found; memory will not be freed if initialization throws an exception +#pragma warning(disable:4512) // assignment operator could not be generated +#pragma warning(disable:4127) // conditional expression is constant; while(true) OK +#pragma warning(disable:4706) // assignment within conditional expression if(type var=somethig) OK +#pragma warning(disable:4996) // memcpy deprecation +#pragma warning(disable:4702) // unreachable code +#pragma warning(disable:4511) // copy constructor could not be generated (vs2003 specific) +// VS 2015 +#pragma warning(disable:4267) // conversion from 'size_t' to 'int', possible loss of data #endif #endif