diff --git a/indra/llcharacter/llanimationstates.cpp b/indra/llcharacter/llanimationstates.cpp
index ba771c92d967b0b06cb20e1818849b4ccd12f5cb..2465cbb52c57d596a736451a65ad430a0a6541f7 100644
--- a/indra/llcharacter/llanimationstates.cpp
+++ b/indra/llcharacter/llanimationstates.cpp
@@ -339,13 +339,6 @@ LLAnimationLibrary::LLAnimationLibrary() :
 	mAnimMap[ANIM_AGENT_YOGA_FLOAT]=			mAnimStringTable.addString("yoga_float");
 }
 	
-//-----------------------------------------------------------------------------
-// ~LLAnimationLibrary()
-//-----------------------------------------------------------------------------
-LLAnimationLibrary::~LLAnimationLibrary()
-{
-}
-
 //-----------------------------------------------------------------------------
 // Return the text name of an animation state
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llanimationstates.h b/indra/llcharacter/llanimationstates.h
index 7a999e86ade09639bea386c81d75b91e3d55b2f1..244f811bf52d608aa7dcbe7805afea4aa30eb04e 100644
--- a/indra/llcharacter/llanimationstates.h
+++ b/indra/llcharacter/llanimationstates.h
@@ -209,7 +209,7 @@ class LLAnimationLibrary
 
 public:
 	LLAnimationLibrary();
-	~LLAnimationLibrary();
+	~LLAnimationLibrary() = default;
 
 	//-----------------------------------------------------------------------------
 	// Return the text name of a single animation state,
diff --git a/indra/llcharacter/lleditingmotion.cpp b/indra/llcharacter/lleditingmotion.cpp
index ddf89f30f22bb34f35df1ed65775c0ab39dd56d1..c65a4bbfc87640af0d32113344bd2769397b96a1 100644
--- a/indra/llcharacter/lleditingmotion.cpp
+++ b/indra/llcharacter/lleditingmotion.cpp
@@ -66,14 +66,6 @@ LLEditingMotion::LLEditingMotion( const LLUUID &id) : LLMotion(id)
 }
 
 
-//-----------------------------------------------------------------------------
-// ~LLEditingMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLEditingMotion::~LLEditingMotion()
-{
-}
-
 //-----------------------------------------------------------------------------
 // LLEditingMotion::onInitialize(LLCharacter *character)
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/lleditingmotion.h b/indra/llcharacter/lleditingmotion.h
index b11398ae78e4e27f5890557c0117213d63ef5208..418eca7d2b048bd7b9249fdc7af5c3657aa7ef6e 100644
--- a/indra/llcharacter/lleditingmotion.h
+++ b/indra/llcharacter/lleditingmotion.h
@@ -50,7 +50,7 @@ class LLEditingMotion final :
 	LLEditingMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLEditingMotion();
+	virtual ~LLEditingMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
diff --git a/indra/llcharacter/llheadrotmotion.cpp b/indra/llcharacter/llheadrotmotion.cpp
index 9554664ca18f9a1d7c82638fb8da73768ba14792..6d5d2fef65e08788513430c1dc8dd25778350025 100644
--- a/indra/llcharacter/llheadrotmotion.cpp
+++ b/indra/llcharacter/llheadrotmotion.cpp
@@ -81,14 +81,6 @@ LLHeadRotMotion::LLHeadRotMotion(const LLUUID &id) :
 }
 
 
-//-----------------------------------------------------------------------------
-// ~LLHeadRotMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLHeadRotMotion::~LLHeadRotMotion()
-{
-}
-
 //-----------------------------------------------------------------------------
 // LLHeadRotMotion::onInitialize(LLCharacter *character)
 //-----------------------------------------------------------------------------
@@ -292,14 +284,6 @@ LLEyeMotion::LLEyeMotion(const LLUUID &id) : LLMotion(id)
 }
 
 
-//-----------------------------------------------------------------------------
-// ~LLEyeMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLEyeMotion::~LLEyeMotion()
-{
-}
-
 //-----------------------------------------------------------------------------
 // LLEyeMotion::onInitialize(LLCharacter *character)
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llheadrotmotion.h b/indra/llcharacter/llheadrotmotion.h
index 66612f84646364066e4461fc9a757fa6df239479..d72e9fc420e7a7c5028d3669c0b6e4ac08bd23ed 100644
--- a/indra/llcharacter/llheadrotmotion.h
+++ b/indra/llcharacter/llheadrotmotion.h
@@ -47,7 +47,7 @@ class LLHeadRotMotion final :
 	LLHeadRotMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLHeadRotMotion();
+	virtual ~LLHeadRotMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
@@ -130,7 +130,7 @@ class LLEyeMotion :
 	LLEyeMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLEyeMotion();
+	virtual ~LLEyeMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
diff --git a/indra/llcharacter/lljointsolverrp3.cpp b/indra/llcharacter/lljointsolverrp3.cpp
index 69a7e3dc6e7593c314ab30a2e94960a0ef6f17cc..8799086345095a33f87bdf035c3f0b6709a99b44 100644
--- a/indra/llcharacter/lljointsolverrp3.cpp
+++ b/indra/llcharacter/lljointsolverrp3.cpp
@@ -54,14 +54,6 @@ LLJointSolverRP3::LLJointSolverRP3()
 }
 
 
-//-----------------------------------------------------------------------------
-// Destructor
-//-----------------------------------------------------------------------------
-/*virtual*/ LLJointSolverRP3::~LLJointSolverRP3()
-{
-}
-
-
 //-----------------------------------------------------------------------------
 // setupJoints()
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/lljointsolverrp3.h b/indra/llcharacter/lljointsolverrp3.h
index 88b5d0871043033dfb7daa39898ec493fd84ac31..04a8d6bed92fc401469691d5b5ae768840e23878 100644
--- a/indra/llcharacter/lljointsolverrp3.h
+++ b/indra/llcharacter/lljointsolverrp3.h
@@ -113,7 +113,7 @@ class LLJointSolverRP3
 	// Constructor/Destructor
 	//-------------------------------------------------------------------------
 	LLJointSolverRP3();
-	virtual ~LLJointSolverRP3();
+	virtual ~LLJointSolverRP3() = default;
 
 	//-------------------------------------------------------------------------
 	// setupJoints()
diff --git a/indra/llcharacter/lljointstate.h b/indra/llcharacter/lljointstate.h
index 1ccc6b50937ecfe66eb0e9c1252ffc63a18783d1..ae2eed1109d44f6bb893512b192a3cc6f938bb18 100644
--- a/indra/llcharacter/lljointstate.h
+++ b/indra/llcharacter/lljointstate.h
@@ -114,9 +114,7 @@ class LLJointState : public LLRefCount
 
 protected:
 	// Destructor
-	virtual ~LLJointState()
-	{
-	}
+	virtual ~LLJointState() = default;
 	
 };
 
diff --git a/indra/llcharacter/llkeyframefallmotion.cpp b/indra/llcharacter/llkeyframefallmotion.cpp
index 60ab2e99296ec6c49e914cc746dc191f13b00593..eb74eee65fd21aed1723ba193caffdb2c18945b5 100644
--- a/indra/llcharacter/llkeyframefallmotion.cpp
+++ b/indra/llcharacter/llkeyframefallmotion.cpp
@@ -50,15 +50,6 @@ LLKeyframeFallMotion::LLKeyframeFallMotion(const LLUUID &id) : LLKeyframeMotion(
 }
 
 
-//-----------------------------------------------------------------------------
-// ~LLKeyframeFallMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLKeyframeFallMotion::~LLKeyframeFallMotion()
-{
-}
-
-
 //-----------------------------------------------------------------------------
 // LLKeyframeFallMotion::onInitialize()
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llkeyframefallmotion.h b/indra/llcharacter/llkeyframefallmotion.h
index cd67475be27c96dfbe6ca8fb60bf99ba3662dcdf..9814ed8630fbd0f9c5eaf8f69385f76a28a0b29d 100644
--- a/indra/llcharacter/llkeyframefallmotion.h
+++ b/indra/llcharacter/llkeyframefallmotion.h
@@ -44,7 +44,7 @@ class LLKeyframeFallMotion final :
 	LLKeyframeFallMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLKeyframeFallMotion();
+	virtual ~LLKeyframeFallMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
diff --git a/indra/llcharacter/llkeyframestandmotion.cpp b/indra/llcharacter/llkeyframestandmotion.cpp
index 02c1d3cdbd75947c35fd4b0d2c13bbb0903cb489..ddccdf98124adc50404ad2ed78c4274649406ed7 100644
--- a/indra/llcharacter/llkeyframestandmotion.cpp
+++ b/indra/llcharacter/llkeyframestandmotion.cpp
@@ -73,15 +73,6 @@ LLKeyframeStandMotion::LLKeyframeStandMotion(const LLUUID &id) : LLKeyframeMotio
 }
 
 
-//-----------------------------------------------------------------------------
-// ~LLKeyframeStandMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLKeyframeStandMotion::~LLKeyframeStandMotion()
-{
-}
-
-
 //-----------------------------------------------------------------------------
 // LLKeyframeStandMotion::onInitialize()
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llkeyframestandmotion.h b/indra/llcharacter/llkeyframestandmotion.h
index e0d0fab17ab9c427da43bbb5a764222e3a70dd32..7f516b942723cf3fba0ba8c0a8072088f91a840b 100644
--- a/indra/llcharacter/llkeyframestandmotion.h
+++ b/indra/llcharacter/llkeyframestandmotion.h
@@ -45,7 +45,7 @@ class LLKeyframeStandMotion final :
 	LLKeyframeStandMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLKeyframeStandMotion();
+	virtual ~LLKeyframeStandMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
diff --git a/indra/llcharacter/llkeyframewalkmotion.cpp b/indra/llcharacter/llkeyframewalkmotion.cpp
index f180702385c6113d64cea9b2967f3d9b35caffe1..95f314577de12388bca9702e13f1a20fa15c57ff 100644
--- a/indra/llcharacter/llkeyframewalkmotion.cpp
+++ b/indra/llcharacter/llkeyframewalkmotion.cpp
@@ -62,14 +62,6 @@ LLKeyframeWalkMotion::LLKeyframeWalkMotion(const LLUUID &id)
 {}
 
 
-//-----------------------------------------------------------------------------
-// ~LLKeyframeWalkMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLKeyframeWalkMotion::~LLKeyframeWalkMotion()
-{}
-
-
 //-----------------------------------------------------------------------------
 // LLKeyframeWalkMotion::onInitialize()
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llkeyframewalkmotion.h b/indra/llcharacter/llkeyframewalkmotion.h
index 99004814004f54d337b8d076c1867e6d11fe7ee7..9117b97d8a341f2e67bb13f7903a9644f7e0aa9a 100644
--- a/indra/llcharacter/llkeyframewalkmotion.h
+++ b/indra/llcharacter/llkeyframewalkmotion.h
@@ -49,7 +49,7 @@ class LLKeyframeWalkMotion final :
 	LLKeyframeWalkMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLKeyframeWalkMotion();
+	virtual ~LLKeyframeWalkMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
diff --git a/indra/llcharacter/llmotion.cpp b/indra/llcharacter/llmotion.cpp
index 697efc8157fde7bb4cd8132043a7fad589300516..b28e66d22c87174de35a0faf89e2b15c516dc28e 100644
--- a/indra/llcharacter/llmotion.cpp
+++ b/indra/llcharacter/llmotion.cpp
@@ -58,14 +58,6 @@ LLMotion::LLMotion( const LLUUID &id ) :
 		memset(&mJointSignature[i][0], 0, sizeof(U8) * LL_CHARACTER_MAX_ANIMATED_JOINTS);
 }
 
-//-----------------------------------------------------------------------------
-// ~LLMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLMotion::~LLMotion()
-{
-}
-
 //-----------------------------------------------------------------------------
 // fadeOut()
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llmotion.h b/indra/llcharacter/llmotion.h
index 4efc6c6990d7b791ded55490c46e926e175fcb1f..459649be679c3008c2b3d2ec53e9c606325df8f3 100644
--- a/indra/llcharacter/llmotion.h
+++ b/indra/llcharacter/llmotion.h
@@ -63,7 +63,7 @@ class LLMotion
 	LLMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLMotion();
+	virtual ~LLMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
@@ -194,7 +194,7 @@ class LLTestMotion final : public LLMotion
 {
 public:
 	LLTestMotion(const LLUUID &id) : LLMotion(id){}
-	~LLTestMotion() {}
+	~LLTestMotion() = default;
 	static LLMotion *create(const LLUUID& id) { return new LLTestMotion(id); }
 	BOOL getLoop() { return FALSE; }
 	F32 getDuration() { return 0.0f; }
@@ -218,7 +218,7 @@ class LLNullMotion final : public LLMotion
 {
 public:
 	LLNullMotion(const LLUUID &id) : LLMotion(id) {}
-	~LLNullMotion() {}
+	~LLNullMotion() = default;
 	static LLMotion *create(const LLUUID &id) { return new LLNullMotion(id); }
 
 	// motions must specify whether or not they loop
diff --git a/indra/llcharacter/llmultigesture.cpp b/indra/llcharacter/llmultigesture.cpp
index 2045739c7f1144e76cfa5b5a703e02a18947f2ec..f5afd3cee6efb7609d8c99aced9b7cc551bed8f3 100644
--- a/indra/llcharacter/llmultigesture.cpp
+++ b/indra/llcharacter/llmultigesture.cpp
@@ -244,9 +244,6 @@ LLGestureStepAnimation::LLGestureStepAnimation()
 	mFlags(0x0)
 { }
 
-LLGestureStepAnimation::~LLGestureStepAnimation()
-{ }
-
 S32 LLGestureStepAnimation::getMaxSerialSize() const
 {
 	S32 max_size = 0;
@@ -329,9 +326,6 @@ LLGestureStepSound::LLGestureStepSound()
 	mFlags(0x0)
 { }
 
-LLGestureStepSound::~LLGestureStepSound()
-{ }
-
 S32 LLGestureStepSound::getMaxSerialSize() const
 {
 	S32 max_size = 0;
@@ -391,9 +385,6 @@ LLGestureStepChat::LLGestureStepChat()
 	mFlags(0x0)
 { }
 
-LLGestureStepChat::~LLGestureStepChat()
-{ }
-
 S32 LLGestureStepChat::getMaxSerialSize() const
 {
 	S32 max_size = 0;
@@ -446,9 +437,6 @@ LLGestureStepWait::LLGestureStepWait()
 	mFlags(0x0)
 { }
 
-LLGestureStepWait::~LLGestureStepWait()
-{ }
-
 S32 LLGestureStepWait::getMaxSerialSize() const
 {
 	S32 max_size = 0;
diff --git a/indra/llcharacter/llmultigesture.h b/indra/llcharacter/llmultigesture.h
index 92820159d4541c96060cc45987dacc1503721099..955f630930e781bc2b9570e067d99787457447fb 100644
--- a/indra/llcharacter/llmultigesture.h
+++ b/indra/llcharacter/llmultigesture.h
@@ -120,8 +120,8 @@ enum EStepType
 class LLGestureStep
 {
 public:
-	LLGestureStep() {}
-	virtual ~LLGestureStep() {}
+	LLGestureStep() = default;
+	virtual ~LLGestureStep() = default;
 
 	virtual EStepType getType() = 0;
 
@@ -144,7 +144,7 @@ class LLGestureStepAnimation : public LLGestureStep
 {
 public:
 	LLGestureStepAnimation();
-	virtual ~LLGestureStepAnimation();
+	virtual ~LLGestureStepAnimation() = default;
 
 	virtual EStepType getType() { return STEP_ANIMATION; }
 
@@ -167,7 +167,7 @@ class LLGestureStepSound : public LLGestureStep
 {
 public:
 	LLGestureStepSound();
-	virtual ~LLGestureStepSound();
+	virtual ~LLGestureStepSound() = default;
 
 	virtual EStepType getType() { return STEP_SOUND; }
 
@@ -190,7 +190,7 @@ class LLGestureStepChat : public LLGestureStep
 {
 public:
 	LLGestureStepChat();
-	virtual ~LLGestureStepChat();
+	virtual ~LLGestureStepChat() = default;
 
 	virtual EStepType getType() { return STEP_CHAT; }
 
@@ -215,7 +215,7 @@ class LLGestureStepWait : public LLGestureStep
 {
 public:
 	LLGestureStepWait();
-	virtual ~LLGestureStepWait();
+	virtual ~LLGestureStepWait() = default;
 
 	virtual EStepType getType() { return STEP_WAIT; }
 
diff --git a/indra/llcharacter/llpose.cpp b/indra/llcharacter/llpose.cpp
index e08176c08b782a7188f04dadfa59261053b63d68..afc06254075ba5605ce3030e3a92a0a50f657d7b 100644
--- a/indra/llcharacter/llpose.cpp
+++ b/indra/llcharacter/llpose.cpp
@@ -39,13 +39,6 @@
 // Static
 //-----------------------------------------------------------------------------
 
-//-----------------------------------------------------------------------------
-// LLPose
-//-----------------------------------------------------------------------------
-LLPose::~LLPose()
-{
-}
-
 //-----------------------------------------------------------------------------
 // getFirstJointState()
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/llpose.h b/indra/llcharacter/llpose.h
index fdb7158a5eb27e64f1771a4bd0d98534fbd3c66b..ba23ad489f55957c7902bf5d44f6a19ad54c4f78 100644
--- a/indra/llcharacter/llpose.h
+++ b/indra/llcharacter/llpose.h
@@ -65,7 +65,7 @@ class LLPose
 	// Constructor
 	LLPose() : mWeight(0.f) {}
 	// Destructor
-	~LLPose();
+	~LLPose() = default;
 	// add a joint state in this pose
 	BOOL addJointState(const LLPointer<LLJointState>& jointState);
 	// remove a joint state from this pose
diff --git a/indra/llcharacter/llstatemachine.cpp b/indra/llcharacter/llstatemachine.cpp
index b917db31172fd5bb8397390834b1db73d2f8bef3..c4906ac7607f5af8b6027ee3545a1e1a515f910a 100644
--- a/indra/llcharacter/llstatemachine.cpp
+++ b/indra/llcharacter/llstatemachine.cpp
@@ -52,11 +52,6 @@ LLStateDiagram::LLStateDiagram()
 	mUseDefaultState = FALSE;
 }
 
-LLStateDiagram::~LLStateDiagram()
-{
-
-}
-
 // add a state to the state graph
 BOOL LLStateDiagram::addState(LLFSMState *state)
 {
@@ -304,11 +299,6 @@ LLStateMachine::LLStateMachine()
 	mStateDiagram = NULL;
 }
 
-LLStateMachine::~LLStateMachine()
-{
-
-}
-
 // returns current state
 LLFSMState*	LLStateMachine::getCurrentState() const
 {
diff --git a/indra/llcharacter/llstatemachine.h b/indra/llcharacter/llstatemachine.h
index ebfdbc462b85b6359587766feeb6051456a3798d..65382579b8a186a0e6520ac70981dce0e0904a89 100644
--- a/indra/llcharacter/llstatemachine.h
+++ b/indra/llcharacter/llstatemachine.h
@@ -78,7 +78,7 @@ friend class LLStateMachine;
 
 public:
 	LLStateDiagram();
-	virtual ~LLStateDiagram();
+	virtual ~LLStateDiagram() = default;
 
 protected:
 	// add a state to the state graph, executed implicitly when adding transitions
@@ -123,7 +123,7 @@ class LLStateMachine
 
 public:
 	LLStateMachine();
-	virtual ~LLStateMachine();
+	virtual ~LLStateMachine() = default;
 
 	// set state diagram
 	void setStateDiagram(LLStateDiagram* diagram);
diff --git a/indra/llcharacter/lltargetingmotion.cpp b/indra/llcharacter/lltargetingmotion.cpp
index 69681e41970d5d18adbb8234fea78978e4f155cc..e7331a68386dcce3a01a9971085ad734d949ac48 100644
--- a/indra/llcharacter/lltargetingmotion.cpp
+++ b/indra/llcharacter/lltargetingmotion.cpp
@@ -52,14 +52,6 @@ LLTargetingMotion::LLTargetingMotion(const LLUUID &id) : LLMotion(id)
 }
 
 
-//-----------------------------------------------------------------------------
-// ~LLTargetingMotion()
-// Class Destructor
-//-----------------------------------------------------------------------------
-LLTargetingMotion::~LLTargetingMotion()
-{
-}
-
 //-----------------------------------------------------------------------------
 // LLTargetingMotion::onInitialize(LLCharacter *character)
 //-----------------------------------------------------------------------------
diff --git a/indra/llcharacter/lltargetingmotion.h b/indra/llcharacter/lltargetingmotion.h
index accc5a41356ae58e622bb6fa6781842b650855ca..0e45c0980d40775ce89cbf728d3c2aa81f3a9d75 100644
--- a/indra/llcharacter/lltargetingmotion.h
+++ b/indra/llcharacter/lltargetingmotion.h
@@ -49,7 +49,7 @@ class LLTargetingMotion final :
 	LLTargetingMotion(const LLUUID &id);
 
 	// Destructor
-	virtual ~LLTargetingMotion();
+	virtual ~LLTargetingMotion() = default;
 
 public:
 	//-------------------------------------------------------------------------
diff --git a/indra/llcharacter/llvisualparam.h b/indra/llcharacter/llvisualparam.h
index 875cb2c350f81b5581db3966111056763e590603..66654b360425784dff6e02b4bcf88f670414700a 100644
--- a/indra/llcharacter/llvisualparam.h
+++ b/indra/llcharacter/llvisualparam.h
@@ -72,7 +72,7 @@ class LLVisualParamInfo
 	friend class LLVisualParam;
 public:
 	LLVisualParamInfo();
-	virtual ~LLVisualParamInfo() {};
+	virtual ~LLVisualParamInfo() = default;
 
 	virtual BOOL parseXml(LLXmlTreeNode *node);