src/cx/common.h

changeset 1162
e3bb67b72d33
parent 1093
bcbf6bf582fa
equal deleted inserted replaced
1161:747c4baed44f 1162:e3bb67b72d33
118 #else 118 #else
119 #error Unknown pointer size or missing size macros! 119 #error Unknown pointer size or missing size macros!
120 #endif 120 #endif
121 121
122 // --------------------------------------------------------------------------- 122 // ---------------------------------------------------------------------------
123 // Missing Defines
124 // ---------------------------------------------------------------------------
125
126 #ifndef SSIZE_MAX // not defined in glibc since C23 and MSVC
127 #if CX_WORDSIZE == 64
128 /**
129 * The maximum representable value in ssize_t.
130 */
131 #define SSIZE_MAX 0x7fffffffffffffffll
132 #else
133 #define SSIZE_MAX 0x7fffffffl
134 #endif
135 #endif
136
137
138 // ---------------------------------------------------------------------------
139 // Attribute definitions 123 // Attribute definitions
140 // --------------------------------------------------------------------------- 124 // ---------------------------------------------------------------------------
141 125
142 #ifndef __GNUC__ 126 #ifndef __GNUC__
143 /** 127 /**
363 // --------------------------------------------------------------------------- 347 // ---------------------------------------------------------------------------
364 // Fixes for MSVC incompatibilities 348 // Fixes for MSVC incompatibilities
365 // --------------------------------------------------------------------------- 349 // ---------------------------------------------------------------------------
366 350
367 #ifdef _MSC_VER 351 #ifdef _MSC_VER
368 // fix missing ssize_t definition
369 #include <BaseTsd.h>
370 typedef SSIZE_T ssize_t;
371
372 // fix missing _Thread_local support 352 // fix missing _Thread_local support
373 #define _Thread_local __declspec(thread) 353 #define _Thread_local __declspec(thread)
374 #endif // _MSC_VER 354 #endif // _MSC_VER
375 355
376 #endif // UCX_COMMON_H 356 #endif // UCX_COMMON_H

mercurial