- switch (fc->type) {
- case BT_FIELD_CLASS_TYPE_OPTION:
- {
- struct bt_field_class_option *opt_fc = (void *) fc;
-
- if (opt_fc->selector_fc) {
- BT_ASSERT(!opt_fc->selector_field_path);
- opt_fc->selector_field_path = resolve_field_path(
- fc, opt_fc->selector_fc, ctx);
- if (!opt_fc->selector_field_path) {
- ret = -1;
- goto end;
- }
+ if (bt_field_class_type_is(fc->type,
+ BT_FIELD_CLASS_TYPE_OPTION_WITH_SELECTOR_FIELD)) {
+ struct bt_field_class_option_with_selector_field *opt_fc = (void *) fc;
+
+ BT_ASSERT(opt_fc->selector_fc);
+ BT_ASSERT(!opt_fc->selector_field_path);
+ opt_fc->selector_field_path = resolve_field_path(
+ fc, opt_fc->selector_fc, ctx);
+ if (!opt_fc->selector_field_path) {
+ ret = -1;
+ goto end;