TAssetPtr invalid target type for dynamic_cast

On Deferencing an AssetPtr of the UDestructibleMesh type I get this error, Is this a bug in the engine or am I doing something wrong ?

TAssetPtr<UDestructibleMesh> DestructibleMesh; \\has a valid String Reference

UDestructibleComponent* LanceDest = CreateDefaultSubobject<UDestructibleComponent>(TEXT("LanceDestructible"));

LanceDest->SetDestructibleMesh(DestructibleMesh.Get()); //The Get() here causes this error


error C2680: 'UDestructibleMesh *' : invalid target type for dynamic_cast
1>          'UDestructibleMesh' : class must be defined before using in a dynamic_cast
1>          E:\Game Dev\Epic Games\4.9.2.1\Engine\Source\Runtime\CoreUObject\Public\UObject\AssetPtr.h(192) : see reference to function template instantiation 'UDestructibleMesh *UE4Casts_Private::DynamicCast<T*,UObject>(From *)' being compiled
1>          with
1>          [
1>              T=UDestructibleMesh
1>  ,            From=UObject
1>          ]
1>          E:\Game Dev\Epic Games\4.9.2.1\Engine\Source\Runtime\CoreUObject\Public\UObject\AssetPtr.h(191) : while compiling class template member function 'UDestructibleMesh *TAssetPtr<UDestructibleMesh>::Get(void) const'
1>          E:\Game Dev\Projects_Repo\RJ_Lite_101\Source\RJ_Lite_101\JLance.cpp(51) : see reference to function template instantiation 'UDestructibleMesh *TAssetPtr<UDestructibleMesh>::Get(void) const' being compiled
1>          e:\game dev\projects_repo\rj_lite_101\source\rj_lite_101\JStructs.h(146) : see reference to class template instantiation 'TAssetPtr<UDestructibleMesh>' being compiled

I’m using a Github version of UE4 based on 4.9.2 build

Fixed this by Including the DestructibleMesh.h

#include "Engine/DestructibleMesh.h"