Description

Implementing an interface that contains const functions and later attempting to change these functions to be non-const does not update the status of the functions inside of the actor they are implemented in.

In order to get them to update, the interface must be re-implemented.

Found in 4.13.2, reproduced in 4.12.5 and 4.14 Preview 2.

Steps to Reproduce
  1. Open the editor
  2. Create a new blueprint interface with a const function that returns a bool
  3. Create a new actor blueprint
  4. Implement the interface in the actor's class settings
  5. Add a new variable to the actor
  6. In the actor, open the interface function and attempt to set your variable
  7. Notice that you get an error message stating that it is a read only target, which is expected for a const function
  8. Go back into your interface and make the functions non-const
  9. Reopen the actor and attempt to compile again

Result: When changing the functions to no longer be const, they are still behaving as if they are const.

Expected: The changes made to the const status would be updated in the actor, and it would compile successfully.

Have Comments or More Details?

Head over to the existing Questions & Answers thread and let us know what's up.

1
Login to Vote

Fixed
ComponentUE - Gameplay - Blueprint
Affects Versions4.124.134.14
Target Fix4.17
Fix Commit3483146
Main Commit3510073
CreatedNov 8, 2016
ResolvedJun 9, 2017
UpdatedJun 11, 2019