]> Dogcows Code - chaz/yoink/blob - src/stlplus/strings/strings_fixes.hpp
testing new non-autotools build system
[chaz/yoink] / src / stlplus / strings / strings_fixes.hpp
1 #ifndef STLPLUS_STRINGS_FIXES
2 #define STLPLUS_STRINGS_FIXES
3 ////////////////////////////////////////////////////////////////////////////////
4
5 // Author: Andy Rushton
6 // Copyright: (c) Southampton University 1999-2004
7 // (c) Andy Rushton 2004-2009
8 // License: BSD License, see ../docs/license.html
9
10 // Contains work arounds for OS or Compiler specific problems
11
12 ////////////////////////////////////////////////////////////////////////////////
13
14 ////////////////////////////////////////////////////////////////////////////////
15 // Problem with MicroSoft defining two different macros to identify Windows
16 ////////////////////////////////////////////////////////////////////////////////
17
18 #if defined(_WIN32) || defined(_WIN32_WCE)
19 #define MSWINDOWS
20 #endif
21
22 ////////////////////////////////////////////////////////////////////////////////
23 // Unnecessary compiler warnings
24 ////////////////////////////////////////////////////////////////////////////////
25
26 #ifdef _MSC_VER
27 // Microsoft Visual Studio
28 // shut up the following irritating warnings
29 // 4786 - VC6, identifier string exceeded maximum allowable length and was truncated (only affects debugger)
30 // 4305 - VC6, identifier type was converted to a smaller type
31 // 4503 - VC6, decorated name was longer than the maximum the compiler allows (only affects debugger)
32 // 4309 - VC6, type conversion operation caused a constant to exceeded the space allocated for it
33 // 4290 - VC6, C++ exception specification ignored
34 // 4800 - VC6, forcing value to bool 'true' or 'false' (performance warning)
35 // 4675 - VC7.1, "change" in function overload resolution _might_ have altered program
36 // 4996 - VC8, 'xxxx' was declared deprecated
37 #pragma warning(disable: 4786 4305 4503 4309 4290 4800 4675 4996)
38 #endif
39
40 #ifdef __BORLANDC__
41 // Borland
42 // Shut up the following irritating warnings
43 // 8026 - Functions with exception specifications are not expanded inline
44 // 8027 - Functions with xxx are not expanded inline
45 // 8066 - Unreachable code.
46 // A break, continue, goto, or return statement was not followed by a
47 // label or the end of a loop or function. The compiler checks while,
48 // do, and for loops with a constant test condition, and attempts to
49 // recognize loops that can't fall through.
50 #pragma warn -8026
51 #pragma warn -8027
52 #pragma warn -8066
53 #endif
54
55 ////////////////////////////////////////////////////////////////////////////////
56 #endif
This page took 0.032638 seconds and 4 git commands to generate.