Skip to content

Commit 99a98d7

Browse files
authored
Remove VS 2013 compiler support (#70)
* Removed VS 2013 specific warning supression * Use ``noexcept`` instead of ``throw()`` * No longer need ``_MSC_VER`` guards around ``=default`` move ctors/operators
1 parent faf8558 commit 99a98d7

File tree

4 files changed

+10
-118
lines changed

4 files changed

+10
-118
lines changed

Inc/DirectXCollision.h

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,13 @@ struct BoundingSphere
4646
float Radius; // Radius of the sphere.
4747

4848
// Creators
49-
BoundingSphere() throw() : Center(0, 0, 0), Radius(1.f) {}
49+
BoundingSphere() noexcept : Center(0, 0, 0), Radius(1.f) {}
5050

5151
BoundingSphere(const BoundingSphere&) = default;
5252
BoundingSphere& operator=(const BoundingSphere&) = default;
5353

54-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
5554
BoundingSphere(BoundingSphere&&) = default;
5655
BoundingSphere& operator=(BoundingSphere&&) = default;
57-
#endif
5856

5957
XM_CONSTEXPR BoundingSphere( _In_ const XMFLOAT3& center, _In_ float radius )
6058
: Center(center), Radius(radius) {}
@@ -112,15 +110,13 @@ struct BoundingBox
112110
XMFLOAT3 Extents; // Distance from the center to each side.
113111

114112
// Creators
115-
BoundingBox() throw() : Center(0, 0, 0), Extents(1.f, 1.f, 1.f) {}
113+
BoundingBox() noexcept : Center(0, 0, 0), Extents(1.f, 1.f, 1.f) {}
116114

117115
BoundingBox(const BoundingBox&) = default;
118116
BoundingBox& operator=(const BoundingBox&) = default;
119117

120-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
121118
BoundingBox(BoundingBox&&) = default;
122119
BoundingBox& operator=(BoundingBox&&) = default;
123-
#endif
124120

125121
XM_CONSTEXPR BoundingBox( _In_ const XMFLOAT3& center, _In_ const XMFLOAT3& extents )
126122
: Center(center), Extents(extents) {}
@@ -179,15 +175,13 @@ struct BoundingOrientedBox
179175
XMFLOAT4 Orientation; // Unit quaternion representing rotation (box -> world).
180176

181177
// Creators
182-
BoundingOrientedBox() throw() : Center(0, 0, 0), Extents(1.f, 1.f, 1.f), Orientation(0, 0, 0, 1.f) {}
178+
BoundingOrientedBox() noexcept : Center(0, 0, 0), Extents(1.f, 1.f, 1.f), Orientation(0, 0, 0, 1.f) {}
183179

184180
BoundingOrientedBox(const BoundingOrientedBox&) = default;
185181
BoundingOrientedBox& operator=(const BoundingOrientedBox&) = default;
186182

187-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
188183
BoundingOrientedBox(BoundingOrientedBox&&) = default;
189184
BoundingOrientedBox& operator=(BoundingOrientedBox&&) = default;
190-
#endif
191185

192186
XM_CONSTEXPR BoundingOrientedBox( _In_ const XMFLOAT3& _Center, _In_ const XMFLOAT3& _Extents, _In_ const XMFLOAT4& _Orientation )
193187
: Center(_Center), Extents(_Extents), Orientation(_Orientation) {}
@@ -248,17 +242,15 @@ struct BoundingFrustum
248242
float Near, Far; // Z of the near plane and far plane.
249243

250244
// Creators
251-
BoundingFrustum() throw() :
245+
BoundingFrustum() noexcept :
252246
Origin(0, 0, 0), Orientation(0, 0, 0, 1.f), RightSlope(1.f), LeftSlope(-1.f),
253247
TopSlope(1.f), BottomSlope(-1.f), Near(0), Far(1.f) {}
254248

255249
BoundingFrustum(const BoundingFrustum&) = default;
256250
BoundingFrustum& operator=(const BoundingFrustum&) = default;
257251

258-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
259252
BoundingFrustum(BoundingFrustum&&) = default;
260253
BoundingFrustum& operator=(BoundingFrustum&&) = default;
261-
#endif
262254

263255
XM_CONSTEXPR BoundingFrustum( _In_ const XMFLOAT3& _Origin, _In_ const XMFLOAT4& _Orientation,
264256
_In_ float _RightSlope, _In_ float _LeftSlope, _In_ float _TopSlope, _In_ float _BottomSlope,

Inc/DirectXMath.h

Lines changed: 3 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515

1616
#define DIRECTX_MATH_VERSION 312
1717

18-
#if defined(_MSC_VER) && (_MSC_VER < 1800)
19-
#error DirectX Math requires Visual C++ 2013 or later.
18+
#if defined(_MSC_VER) && (_MSC_VER < 1900)
19+
#error DirectX Math requires Visual C++ 2015 or later.
2020
#endif
2121

2222
#if defined(_MSC_VER) && !defined(_M_ARM) && !defined(_M_ARM64) && !defined(_M_HYBRID_X86_ARM64) && (!_MANAGED) && (!_M_CEE) && (!defined(_M_IX86_FP) || (_M_IX86_FP > 1)) && !defined(_XM_NO_INTRINSICS_) && !defined(_XM_VECTORCALL_)
@@ -268,12 +268,11 @@ inline bool XMComparisonAnyOutOfBounds(uint32_t CR) { return (((CR) & XM_CRMASK_
268268
****************************************************************************/
269269

270270
#pragma warning(push)
271-
#pragma warning(disable:4068 4201 4365 4324 4608 4820)
271+
#pragma warning(disable:4068 4201 4365 4324 4820)
272272
// C4068: ignore unknown pragmas
273273
// C4201: nonstandard extension used : nameless struct/union
274274
// C4365: Off by default noise
275275
// C4324/4820: padding warnings
276-
// C4608: false union intialization warning from VS 2013
277276

278277
#ifdef _PREFAST_
279278
#pragma prefast(push)
@@ -458,14 +457,10 @@ __declspec(align(16)) struct XMMATRIX
458457
XMMATRIX(const XMMATRIX&) = default;
459458
XMMATRIX& operator=(const XMMATRIX&) = default;
460459

461-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
462460
XMMATRIX(XMMATRIX&&) = default;
463461
XMMATRIX& operator=(XMMATRIX&&) = default;
464462

465463
constexpr XMMATRIX(FXMVECTOR R0, FXMVECTOR R1, FXMVECTOR R2, CXMVECTOR R3) : r{ R0,R1,R2,R3 } {}
466-
#else
467-
XMMATRIX(FXMVECTOR R0, FXMVECTOR R1, FXMVECTOR R2, CXMVECTOR R3) { r[0] = R0; r[1] = R1; r[2] = R2; r[3] = R3; }
468-
#endif
469464
XMMATRIX(float m00, float m01, float m02, float m03,
470465
float m10, float m11, float m12, float m13,
471466
float m20, float m21, float m22, float m23,
@@ -507,10 +502,8 @@ struct XMFLOAT2
507502
XMFLOAT2(const XMFLOAT2&) = default;
508503
XMFLOAT2& operator=(const XMFLOAT2&) = default;
509504

510-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
511505
XMFLOAT2(XMFLOAT2&&) = default;
512506
XMFLOAT2& operator=(XMFLOAT2&&) = default;
513-
#endif
514507

515508
XM_CONSTEXPR XMFLOAT2(float _x, float _y) : x(_x), y(_y) {}
516509
explicit XMFLOAT2(_In_reads_(2) const float *pArray) : x(pArray[0]), y(pArray[1]) {}
@@ -524,10 +517,8 @@ __declspec(align(16)) struct XMFLOAT2A : public XMFLOAT2
524517
XMFLOAT2A(const XMFLOAT2A&) = default;
525518
XMFLOAT2A& operator=(const XMFLOAT2A&) = default;
526519

527-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
528520
XMFLOAT2A(XMFLOAT2A&&) = default;
529521
XMFLOAT2A& operator=(XMFLOAT2A&&) = default;
530-
#endif
531522

532523
XM_CONSTEXPR XMFLOAT2A(float _x, float _y) : XMFLOAT2(_x, _y) {}
533524
explicit XMFLOAT2A(_In_reads_(2) const float *pArray) : XMFLOAT2(pArray) {}
@@ -545,10 +536,8 @@ struct XMINT2
545536
XMINT2(const XMINT2&) = default;
546537
XMINT2& operator=(const XMINT2&) = default;
547538

548-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
549539
XMINT2(XMINT2&&) = default;
550540
XMINT2& operator=(XMINT2&&) = default;
551-
#endif
552541

553542
XM_CONSTEXPR XMINT2(int32_t _x, int32_t _y) : x(_x), y(_y) {}
554543
explicit XMINT2(_In_reads_(2) const int32_t *pArray) : x(pArray[0]), y(pArray[1]) {}
@@ -565,10 +554,8 @@ struct XMUINT2
565554
XMUINT2(const XMUINT2&) = default;
566555
XMUINT2& operator=(const XMUINT2&) = default;
567556

568-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
569557
XMUINT2(XMUINT2&&) = default;
570558
XMUINT2& operator=(XMUINT2&&) = default;
571-
#endif
572559

573560
XM_CONSTEXPR XMUINT2(uint32_t _x, uint32_t _y) : x(_x), y(_y) {}
574561
explicit XMUINT2(_In_reads_(2) const uint32_t *pArray) : x(pArray[0]), y(pArray[1]) {}
@@ -587,10 +574,8 @@ struct XMFLOAT3
587574
XMFLOAT3(const XMFLOAT3&) = default;
588575
XMFLOAT3& operator=(const XMFLOAT3&) = default;
589576

590-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
591577
XMFLOAT3(XMFLOAT3&&) = default;
592578
XMFLOAT3& operator=(XMFLOAT3&&) = default;
593-
#endif
594579

595580
XM_CONSTEXPR XMFLOAT3(float _x, float _y, float _z) : x(_x), y(_y), z(_z) {}
596581
explicit XMFLOAT3(_In_reads_(3) const float *pArray) : x(pArray[0]), y(pArray[1]), z(pArray[2]) {}
@@ -604,10 +589,8 @@ __declspec(align(16)) struct XMFLOAT3A : public XMFLOAT3
604589
XMFLOAT3A(const XMFLOAT3A&) = default;
605590
XMFLOAT3A& operator=(const XMFLOAT3A&) = default;
606591

607-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
608592
XMFLOAT3A(XMFLOAT3A&&) = default;
609593
XMFLOAT3A& operator=(XMFLOAT3A&&) = default;
610-
#endif
611594

612595
XM_CONSTEXPR XMFLOAT3A(float _x, float _y, float _z) : XMFLOAT3(_x, _y, _z) {}
613596
explicit XMFLOAT3A(_In_reads_(3) const float *pArray) : XMFLOAT3(pArray) {}
@@ -626,10 +609,8 @@ struct XMINT3
626609
XMINT3(const XMINT3&) = default;
627610
XMINT3& operator=(const XMINT3&) = default;
628611

629-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
630612
XMINT3(XMINT3&&) = default;
631613
XMINT3& operator=(XMINT3&&) = default;
632-
#endif
633614

634615
XM_CONSTEXPR XMINT3(int32_t _x, int32_t _y, int32_t _z) : x(_x), y(_y), z(_z) {}
635616
explicit XMINT3(_In_reads_(3) const int32_t *pArray) : x(pArray[0]), y(pArray[1]), z(pArray[2]) {}
@@ -647,10 +628,8 @@ struct XMUINT3
647628
XMUINT3(const XMUINT3&) = default;
648629
XMUINT3& operator=(const XMUINT3&) = default;
649630

650-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
651631
XMUINT3(XMUINT3&&) = default;
652632
XMUINT3& operator=(XMUINT3&&) = default;
653-
#endif
654633

655634
XM_CONSTEXPR XMUINT3(uint32_t _x, uint32_t _y, uint32_t _z) : x(_x), y(_y), z(_z) {}
656635
explicit XMUINT3(_In_reads_(3) const uint32_t *pArray) : x(pArray[0]), y(pArray[1]), z(pArray[2]) {}
@@ -670,10 +649,8 @@ struct XMFLOAT4
670649
XMFLOAT4(const XMFLOAT4&) = default;
671650
XMFLOAT4& operator=(const XMFLOAT4&) = default;
672651

673-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
674652
XMFLOAT4(XMFLOAT4&&) = default;
675653
XMFLOAT4& operator=(XMFLOAT4&&) = default;
676-
#endif
677654

678655
XM_CONSTEXPR XMFLOAT4(float _x, float _y, float _z, float _w) : x(_x), y(_y), z(_z), w(_w) {}
679656
explicit XMFLOAT4(_In_reads_(4) const float *pArray) : x(pArray[0]), y(pArray[1]), z(pArray[2]), w(pArray[3]) {}
@@ -687,10 +664,8 @@ __declspec(align(16)) struct XMFLOAT4A : public XMFLOAT4
687664
XMFLOAT4A(const XMFLOAT4A&) = default;
688665
XMFLOAT4A& operator=(const XMFLOAT4A&) = default;
689666

690-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
691667
XMFLOAT4A(XMFLOAT4A&&) = default;
692668
XMFLOAT4A& operator=(XMFLOAT4A&&) = default;
693-
#endif
694669

695670
XM_CONSTEXPR XMFLOAT4A(float _x, float _y, float _z, float _w) : XMFLOAT4(_x, _y, _z, _w) {}
696671
explicit XMFLOAT4A(_In_reads_(4) const float *pArray) : XMFLOAT4(pArray) {}
@@ -710,10 +685,8 @@ struct XMINT4
710685
XMINT4(const XMINT4&) = default;
711686
XMINT4& operator=(const XMINT4&) = default;
712687

713-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
714688
XMINT4(XMINT4&&) = default;
715689
XMINT4& operator=(XMINT4&&) = default;
716-
#endif
717690

718691
XM_CONSTEXPR XMINT4(int32_t _x, int32_t _y, int32_t _z, int32_t _w) : x(_x), y(_y), z(_z), w(_w) {}
719692
explicit XMINT4(_In_reads_(4) const int32_t *pArray) : x(pArray[0]), y(pArray[1]), z(pArray[2]), w(pArray[3]) {}
@@ -732,10 +705,8 @@ struct XMUINT4
732705
XMUINT4(const XMUINT4&) = default;
733706
XMUINT4& operator=(const XMUINT4&) = default;
734707

735-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
736708
XMUINT4(XMUINT4&&) = default;
737709
XMUINT4& operator=(XMUINT4&&) = default;
738-
#endif
739710

740711
XM_CONSTEXPR XMUINT4(uint32_t _x, uint32_t _y, uint32_t _z, uint32_t _w) : x(_x), y(_y), z(_z), w(_w) {}
741712
explicit XMUINT4(_In_reads_(4) const uint32_t *pArray) : x(pArray[0]), y(pArray[1]), z(pArray[2]), w(pArray[3]) {}
@@ -761,10 +732,8 @@ struct XMFLOAT3X3
761732
XMFLOAT3X3(const XMFLOAT3X3&) = default;
762733
XMFLOAT3X3& operator=(const XMFLOAT3X3&) = default;
763734

764-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
765735
XMFLOAT3X3(XMFLOAT3X3&&) = default;
766736
XMFLOAT3X3& operator=(XMFLOAT3X3&&) = default;
767-
#endif
768737

769738
XM_CONSTEXPR XMFLOAT3X3(float m00, float m01, float m02,
770739
float m10, float m11, float m12,
@@ -799,10 +768,8 @@ struct XMFLOAT4X3
799768
XMFLOAT4X3(const XMFLOAT4X3&) = default;
800769
XMFLOAT4X3& operator=(const XMFLOAT4X3&) = default;
801770

802-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
803771
XMFLOAT4X3(XMFLOAT4X3&&) = default;
804772
XMFLOAT4X3& operator=(XMFLOAT4X3&&) = default;
805-
#endif
806773

807774
XM_CONSTEXPR XMFLOAT4X3(float m00, float m01, float m02,
808775
float m10, float m11, float m12,
@@ -826,10 +793,8 @@ __declspec(align(16)) struct XMFLOAT4X3A : public XMFLOAT4X3
826793
XMFLOAT4X3A(const XMFLOAT4X3A&) = default;
827794
XMFLOAT4X3A& operator=(const XMFLOAT4X3A&) = default;
828795

829-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
830796
XMFLOAT4X3A(XMFLOAT4X3A&&) = default;
831797
XMFLOAT4X3A& operator=(XMFLOAT4X3A&&) = default;
832-
#endif
833798

834799
XM_CONSTEXPR XMFLOAT4X3A(float m00, float m01, float m02,
835800
float m10, float m11, float m12,
@@ -860,10 +825,8 @@ struct XMFLOAT4X4
860825
XMFLOAT4X4(const XMFLOAT4X4&) = default;
861826
XMFLOAT4X4& operator=(const XMFLOAT4X4&) = default;
862827

863-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
864828
XMFLOAT4X4(XMFLOAT4X4&&) = default;
865829
XMFLOAT4X4& operator=(XMFLOAT4X4&&) = default;
866-
#endif
867830

868831
XM_CONSTEXPR XMFLOAT4X4(float m00, float m01, float m02, float m03,
869832
float m10, float m11, float m12, float m13,
@@ -887,10 +850,8 @@ __declspec(align(16)) struct XMFLOAT4X4A : public XMFLOAT4X4
887850
XMFLOAT4X4A(const XMFLOAT4X4A&) = default;
888851
XMFLOAT4X4A& operator=(const XMFLOAT4X4A&) = default;
889852

890-
#if !defined(_MSC_VER) || _MSC_VER >= 1900
891853
XMFLOAT4X4A(XMFLOAT4X4A&&) = default;
892854
XMFLOAT4X4A& operator=(XMFLOAT4X4A&&) = default;
893-
#endif
894855

895856
XM_CONSTEXPR XMFLOAT4X4A(float m00, float m01, float m02, float m03,
896857
float m10, float m11, float m12, float m13,

0 commit comments

Comments
 (0)