Skip to content

Commit 3734bc9

Browse files
committed
Wrap #pragma warnings to avoid GCC compilation warnings (microsoft#134, microsoft#135)
1 parent 73000ac commit 3734bc9

8 files changed

+67
-22
lines changed

Inc/DirectXCollision.h

+8-2
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,12 @@ namespace DirectX
3232
struct BoundingOrientedBox;
3333
struct BoundingFrustum;
3434

35+
#ifdef _MSC_VER
3536
#pragma warning(push)
3637
#pragma warning(disable:4324 4820)
3738
// C4324: alignment padding warnings
3839
// C4820: Off by default noise
40+
#endif
3941

4042
//-------------------------------------------------------------------------------------
4143
// Bounding sphere
@@ -321,20 +323,23 @@ namespace DirectX
321323
// Test a triangle against six planes at once (see BoundingFrustum::GetPlanes)
322324
}
323325

326+
#ifdef _MSC_VER
324327
#pragma warning(pop)
328+
#endif
325329

326330
/****************************************************************************
327331
*
328332
* Implementation
329333
*
330334
****************************************************************************/
331335

336+
#ifdef _MSC_VER
332337
#pragma warning(push)
333338
#pragma warning(disable : 4068 4365 4616 6001)
334339
// C4068/4616: ignore unknown pragmas
335340
// C4365: Off by default noise
336341
// C6001: False positives
337-
342+
#endif
338343
#ifdef _PREFAST_
339344
#pragma prefast(push)
340345
#pragma prefast(disable : 25000, "FXMVECTOR is 16 bytes")
@@ -346,8 +351,9 @@ namespace DirectX
346351
#ifdef _PREFAST_
347352
#pragma prefast(pop)
348353
#endif
349-
354+
#ifdef _MSC_VER
350355
#pragma warning(pop)
356+
#endif
351357

352358
} // namespace DirectX
353359

Inc/DirectXMath.h

+1-4
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,7 @@ namespace DirectX
338338
// C4365: Off by default noise
339339
// C4324/4820: padding warnings
340340
#endif
341+
341342
#ifdef _PREFAST_
342343
#pragma prefast(push)
343344
#pragma prefast(disable : 25000, "FXMVECTOR is 16 bytes")
@@ -947,11 +948,9 @@ namespace DirectX
947948
#ifdef __clang__
948949
#pragma clang diagnostic pop
949950
#endif
950-
951951
#ifdef _PREFAST_
952952
#pragma prefast(pop)
953953
#endif
954-
955954
#ifdef _MSC_VER
956955
#pragma warning(pop)
957956
#endif
@@ -2192,11 +2191,9 @@ namespace DirectX
21922191
#ifdef __clang__
21932192
#pragma clang diagnostic pop
21942193
#endif
2195-
21962194
#ifdef _PREFAST_
21972195
#pragma prefast(pop)
21982196
#endif
2199-
22002197
#ifdef _MSC_VER
22012198
#pragma warning(pop)
22022199
#endif

Inc/DirectXPackedVector.h

+16-8
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,14 @@ namespace DirectX
1616

1717
namespace PackedVector
1818
{
19-
19+
#ifdef _MSC_VER
2020
#pragma warning(push)
2121
#pragma warning(disable:4201 4365 4324 4996)
2222
// C4201: nonstandard extension used
2323
// C4365: Off by default noise
2424
// C4324: alignment padding warnings
2525
// C4996: deprecation warnings
26+
#endif
2627

2728
#ifdef __clang__
2829
#pragma clang diagnostic push
@@ -1048,9 +1049,9 @@ namespace DirectX
10481049
#ifdef __clang__
10491050
#pragma clang diagnostic pop
10501051
#endif
1051-
1052+
#ifdef _MSC_VER
10521053
#pragma warning(pop)
1053-
1054+
#endif
10541055

10551056
/****************************************************************************
10561057
*
@@ -1107,9 +1108,11 @@ namespace DirectX
11071108
XMVECTOR XM_CALLCONV XMLoadUNibble4(_In_ const XMUNIBBLE4* pSource) noexcept;
11081109
XMVECTOR XM_CALLCONV XMLoadU555(_In_ const XMU555* pSource) noexcept;
11091110

1111+
#ifdef _MSC_VER
11101112
#pragma warning(push)
11111113
#pragma warning(disable : 4996)
11121114
// C4996: ignore deprecation warning
1115+
#endif
11131116

11141117
#ifdef __GNUC__
11151118
#pragma GCC diagnostic push
@@ -1123,8 +1126,9 @@ namespace DirectX
11231126
#ifdef __GNUC__
11241127
#pragma GCC diagnostic pop
11251128
#endif
1126-
1129+
#ifdef _MSC_VER
11271130
#pragma warning(pop)
1131+
#endif
11281132

11291133
/****************************************************************************
11301134
*
@@ -1164,9 +1168,11 @@ namespace DirectX
11641168
void XM_CALLCONV XMStoreUNibble4(_Out_ XMUNIBBLE4* pDestination, _In_ FXMVECTOR V) noexcept;
11651169
void XM_CALLCONV XMStoreU555(_Out_ XMU555* pDestination, _In_ FXMVECTOR V) noexcept;
11661170

1171+
#ifdef _MSC_VER
11671172
#pragma warning(push)
11681173
#pragma warning(disable : 4996)
11691174
// C4996: ignore deprecation warning
1175+
#endif
11701176

11711177
#ifdef __GNUC__
11721178
#pragma GCC diagnostic push
@@ -1180,21 +1186,23 @@ namespace DirectX
11801186
#ifdef __GNUC__
11811187
#pragma GCC diagnostic pop
11821188
#endif
1183-
1189+
#ifdef _MSC_VER
11841190
#pragma warning(pop)
1191+
#endif
11851192

11861193
/****************************************************************************
11871194
*
11881195
* Implementation
11891196
*
11901197
****************************************************************************/
1191-
1198+
#ifdef _MSC_VER
11921199
#pragma warning(push)
11931200
#pragma warning(disable:4068 4214 4204 4365 4616 6001 6101)
11941201
// C4068/4616: ignore unknown pragmas
11951202
// C4214/4204: nonstandard extension used
11961203
// C4365: Off by default noise
11971204
// C6001/6101: False positives
1205+
#endif
11981206

11991207
#ifdef _PREFAST_
12001208
#pragma prefast(push)
@@ -1207,9 +1215,9 @@ namespace DirectX
12071215
#ifdef _PREFAST_
12081216
#pragma prefast(pop)
12091217
#endif
1210-
1218+
#ifdef _MSC_VER
12111219
#pragma warning(pop)
1212-
1220+
#endif
12131221
} // namespace PackedVector
12141222

12151223
} // namespace DirectX

Inc/DirectXPackedVector.inl

+20-6
Original file line numberDiff line numberDiff line change
@@ -1500,9 +1500,11 @@ inline XMVECTOR XM_CALLCONV XMLoadXDecN4(const XMXDECN4* pSource) noexcept
15001500
}
15011501

15021502
//------------------------------------------------------------------------------
1503+
#ifdef _MSC_VER
15031504
#pragma warning(push)
15041505
#pragma warning(disable : 4996)
15051506
// C4996: ignore deprecation warning
1507+
#endif
15061508

15071509
#ifdef __GNUC__
15081510
#pragma GCC diagnostic push
@@ -1558,8 +1560,9 @@ inline XMVECTOR XM_CALLCONV XMLoadXDec4(const XMXDEC4* pSource) noexcept
15581560
#ifdef __GNUC__
15591561
#pragma GCC diagnostic pop
15601562
#endif
1561-
1563+
#ifdef _MSC_VER
15621564
#pragma warning(pop)
1565+
#endif
15631566

15641567
//------------------------------------------------------------------------------
15651568
_Use_decl_annotations_
@@ -1696,9 +1699,11 @@ inline XMVECTOR XM_CALLCONV XMLoadUDec4(const XMUDEC4* pSource) noexcept
16961699
}
16971700

16981701
//------------------------------------------------------------------------------
1702+
#ifdef _MSC_VER
16991703
#pragma warning(push)
17001704
#pragma warning(disable : 4996)
17011705
// C4996: ignore deprecation warning
1706+
#endif
17021707

17031708
#ifdef __GNUC__
17041709
#pragma GCC diagnostic push
@@ -1801,8 +1806,9 @@ inline XMVECTOR XM_CALLCONV XMLoadDec4(const XMDEC4* pSource) noexcept
18011806
#ifdef __GNUC__
18021807
#pragma GCC diagnostic pop
18031808
#endif
1804-
1809+
#ifdef _MSC_VER
18051810
#pragma warning(pop)
1811+
#endif
18061812

18071813
//------------------------------------------------------------------------------
18081814
_Use_decl_annotations_
@@ -2903,9 +2909,11 @@ inline void XM_CALLCONV XMStoreXDecN4
29032909
}
29042910

29052911
//------------------------------------------------------------------------------
2912+
#ifdef _MSC_VER
29062913
#pragma warning(push)
29072914
#pragma warning(disable : 4996)
29082915
// C4996: ignore deprecation warning
2916+
#endif
29092917

29102918
#ifdef __GNUC__
29112919
#pragma GCC diagnostic push
@@ -2982,8 +2990,9 @@ inline void XM_CALLCONV XMStoreXDec4
29822990
#ifdef __GNUC__
29832991
#pragma GCC diagnostic pop
29842992
#endif
2985-
2993+
#ifdef _MSC_VER
29862994
#pragma warning(pop)
2995+
#endif
29872996

29882997
//------------------------------------------------------------------------------
29892998
_Use_decl_annotations_
@@ -3194,9 +3203,11 @@ inline void XM_CALLCONV XMStoreUDec4
31943203
}
31953204

31963205
//------------------------------------------------------------------------------
3206+
#ifdef _MSC_VER
31973207
#pragma warning(push)
31983208
#pragma warning(disable : 4996)
31993209
// C4996: ignore deprecation warning
3210+
#endif
32003211

32013212
#ifdef __GNUC__
32023213
#pragma GCC diagnostic push
@@ -3327,8 +3338,9 @@ inline void XM_CALLCONV XMStoreDec4
33273338
#ifdef __GNUC__
33283339
#pragma GCC diagnostic pop
33293340
#endif
3330-
3341+
#ifdef _MSC_VER
33313342
#pragma warning(pop)
3343+
#endif
33323344

33333345
//------------------------------------------------------------------------------
33343346
_Use_decl_annotations_
@@ -4142,10 +4154,11 @@ inline XMXDECN4::XMXDECN4(const float* pArray) noexcept
41424154
* XMXDEC4 operators
41434155
*
41444156
****************************************************************************/
4145-
4157+
#ifdef _MSC_VER
41464158
#pragma warning(push)
41474159
#pragma warning(disable : 4996)
41484160
// C4996: ignore deprecation warning
4161+
#endif
41494162

41504163
#ifdef __GNUC__
41514164
#pragma GCC diagnostic push
@@ -4227,8 +4240,9 @@ inline XMDEC4::XMDEC4(const float* pArray) noexcept
42274240
#ifdef __GNUC__
42284241
#pragma GCC diagnostic pop
42294242
#endif
4230-
4243+
#ifdef _MSC_VER
42314244
#pragma warning(pop)
4245+
#endif
42324246

42334247
/****************************************************************************
42344248
*

SHMath/DirectXSH.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,11 @@
77
// http://go.microsoft.com/fwlink/p/?LinkId=262885
88
//-------------------------------------------------------------------------------------
99

10+
#ifdef _MSC_VER
1011
#pragma warning( disable : 4619 4456 )
1112
// C4619 #pragma warning warnings
1213
// C4456 declaration hides previous local declaration
14+
#endif
1315

1416
#ifdef __clang__
1517
#pragma clang diagnostic ignored "-Wold-style-cast"

SHMath/DirectXSHD3D11.cpp

+8-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
// http://go.microsoft.com/fwlink/p/?LinkId=262885
88
//-------------------------------------------------------------------------------------
99

10+
#ifdef _MSC_VER
1011
#pragma warning( disable : 4616 4619 4061 4265 4626 5039 )
1112
// C4616/C4619 #pragma warning warnings
1213
// C4061 numerator 'identifier' in switch of enum 'enumeration' is not explicitly handled by a case label
@@ -16,8 +17,11 @@
1617

1718
#pragma warning(push)
1819
#pragma warning(disable: 4365)
20+
#endif
1921
#include <d3d11_1.h>
22+
#ifdef _MSC_VER
2023
#pragma warning(pop)
24+
#endif
2125

2226
#include "DirectXSH.h"
2327

@@ -89,8 +93,10 @@ namespace
8993
}\
9094
return false;
9195

96+
#ifdef _MSC_VER
9297
#pragma warning(push)
9398
#pragma warning(disable : 6101)
99+
#endif
94100
_Success_(return)
95101
bool _LoadScanline(
96102
_Out_writes_(count) DirectX::XMVECTOR* pDestination,
@@ -165,8 +171,9 @@ namespace
165171
return false;
166172
}
167173
}
174+
#ifdef _MSC_VER
168175
#pragma warning(pop)
169-
176+
#endif
170177
} // namespace anonymous
171178

172179
//-------------------------------------------------------------------------------------

SHMath/DirectXSHD3D12.cpp

+6-1
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,14 @@
77
// http://go.microsoft.com/fwlink/p/?LinkId=262885
88
//-------------------------------------------------------------------------------------
99

10+
#ifdef _MSC_VER
1011
#pragma warning( disable : 4616 4619 4061 4265 4626 5039 )
1112
// C4616/C4619 #pragma warning warnings
1213
// C4061 numerator 'identifier' in switch of enum 'enumeration' is not explicitly handled by a case label
1314
// C4265 class has virtual functions, but destructor is not virtual
1415
// C4626 assignment operator was implicitly defined as deleted
1516
// C5039 pointer or reference to potentially throwing function passed to extern C function under - EHc
17+
#endif
1618

1719
#include <d3d12.h>
1820

@@ -86,8 +88,10 @@ namespace
8688
}\
8789
return false;
8890

91+
#ifdef _MSC_VER
8992
#pragma warning(push)
9093
#pragma warning(disable : 6101)
94+
#endif
9195
_Success_(return)
9296
bool _LoadScanline(
9397
_Out_writes_(count) DirectX::XMVECTOR* pDestination,
@@ -162,8 +166,9 @@ namespace
162166
return false;
163167
}
164168
}
169+
#ifdef _MSC_VER
165170
#pragma warning(pop)
166-
171+
#endif
167172
} // namespace anonymous
168173

169174
//-------------------------------------------------------------------------------------

0 commit comments

Comments
 (0)