Why can't I set default values for an array of classes (not objects) on a child blueprint?

I have a blueprint that is the parent for enemies in my game. This blueprint has an array of weapon objects and an array of weapon classes (all weapon classes are blueprints with weapon as their parent, and weapon has actor as its parent).

When the game begins, this enemy blueprint loops through the weapon classes in its weapon class array and spawns an actor of each of those classes and adds that actor to its weapons array so it can use those weapon instances during the game.

When I view the defaults tab for this generic enemy blueprint, I can modify the list of weapon classes there, but if I create a more specific enemy blueprint that has the generic enemy blueprint as a parent, the weapon classes array does not show up in the defaults for modification. If I create an instance of the more specific enemy in the world I can modify its weapon classes array in the editor, but I don’t want to have to create the entire array manually for each instance of this enemy.

Why is it that I can modify the class array in the defaults of the parent class or in instances of the child class, but I can’t modify it in the defaults of the child class itself, and how might I go about getting the behavior I’m looking for?

You sure your array is public?

It is. It is marked editable and not marked private and I can modify the value(s) of it on instances of derived classes in the details panel of the editor. The only thing I don’t seem to be able to do with it is set default values for it in child blueprints.

In 4.8 I’m having the same issue as OP. I have empty arrays defined in the parent class that I would like to add items to in the child class defaults. The arrays are set to public, and visible if I drop the child class in a level, but not when editing the child class blueprint.

Is it an array of classes or objects