Lv_obj_add_flag compiles OK but lv_obj_update_flag throws a compilation error 8.3.10

Hello, I am trying to hide a spinner when my bool is_turning is false. This is my code:

  lv_obj_add_flag(ui_TurningSpinner, LV_OBJ_FLAG_HIDDEN);
    lv_obj_update_flag(ui_TurningSpinner, LV_OBJ_FLAG_HIDDEN, true);
  } else {
    lv_obj_update_flag(ui_TurningSpinner, LV_OBJ_FLAG_HIDDEN, false);
  }

This bit works - it compiles and it hides the spinner:
lv_obj_add_flag(ui_TurningSpinner, LV_OBJ_FLAG_HIDDEN);

This bit gives a compilation error:
lv_obj_update_flag(ui_TurningSpinner, LV_OBJ_FLAG_HIDDEN,false);

Compilation error: ‘lv_obj_update_flag’ was not declared in this scope

I tried using lv_obj_clear_flag but that didn’t seem to work - i.e. the spinner did not un-hide.
I had a good read through lv_conf.h to see if object flags were switched off by default but couldn’t see anything there.

I’m compiling on a Mac and using SquareLine Studio for generating the ui. I’m then adding a bit more code in Arduino IDE 2 before uploading to my controller.

Anyone got any ideas how to fix this please?

ok this is happening with a lot more than just the above
lv_checkbox_set_checked also throws a compilation error
could this be something to do with memory allocation?

Things that do compile:
lv_label_set_text_fmt
lv_obj_add_flag
lv_arc_get_value

Things that do not compile (all with the same error):
lv_checkbox_set_checked
lv_obj_remove_flag
lv_obj_update_flag

ugh sorry - just been told those functions are not in 8.3.X