Modifying properties of UInstancedStaticMeshComponent added in c++ in editor causes crash

If I extend AActor and add a UInstancedStaticMeshComponent to it in c++ then attempt to modify properties of the UInstancedStaticMeshComponent in the details pane of the actor after creating an instance of it in the level the editor crashes. (I can change the static mesh that is to be instanced but modifying just about anything else causes the crash).

The error message in the log file is

[2014.04.10-02.35.33:376][533]LogWindows:Error: appError called: Assertion failed: !EditReregisterContexts.Find(this) [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.0\Engine\Source\Runtime\Engine\Private\ActorComponent.cpp] [Line: 337] Stack:Address = 0xe389b496 (filename not found) [in D:\apps\Unreal Engine\4.0\Engine\Binaries\Win64\UE4Editor-Core.dll]

If I replace the UInstancedStaticMeshComponent with a StaticMeshComponent I have no problems.
If I create a blueprint from the class then I can modify the component properties without error in the blueprint editor, but as soon as I place an instance of the blueprint in the level the behaviour is the same as for the base c++ class.

Am I doing something wrong / I shouldn’t be? Or is this a bug?

Minimal class that causes the problem:

UCLASS()
class AGeneratedMap : public AActor
{
	GENERATED_UCLASS_BODY()

	UPROPERTY()
	TSubobjectPtr<USceneComponent> WorldTransform;

	UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
	TSubobjectPtr<UInstancedStaticMeshComponent> meshInstanceComponent;	
};

AGeneratedMap::AGeneratedMap(const class FPostConstructInitializeProperties& PCIP)
	: Super(PCIP)
{
	WorldTransform = PCIP.CreateDefaultSubobject<USceneComponent>(this, FName(TEXT("WorldTransform")));
	SetRootComponent(WorldTransform);

	meshInstanceComponent = PCIP.CreateDefaultSubobject<UInstancedStaticMeshComponent>(this, FName(TEXT("InstancedMeshComponent")));
}