diff --git a/libs/video/renderer/vulkan/vkgen/vkgen.r b/libs/video/renderer/vulkan/vkgen/vkgen.r index a186024b8..53b067b16 100644 --- a/libs/video/renderer/vulkan/vkgen/vkgen.r +++ b/libs/video/renderer/vulkan/vkgen/vkgen.r @@ -97,12 +97,6 @@ void print_type (qfot_type_t *type) } } -void struct_func (qfot_var_t *var) -{ - Type *type = [Type findType:var.type]; - [type addToQueue]; -} - void scan_types (void) { @@ -208,7 +202,7 @@ main(int argc, string *argv) if ([[parse getObjectForKey:[obj name]] string] == "skip") { continue; } - [obj forEachFieldCall:struct_func]; + [obj queueFieldTypes]; } [output_types addObject:obj]; } diff --git a/libs/video/renderer/vulkan/vkgen/vkstruct.h b/libs/video/renderer/vulkan/vkgen/vkstruct.h index 08b489592..445c9fc34 100644 --- a/libs/video/renderer/vulkan/vkgen/vkstruct.h +++ b/libs/video/renderer/vulkan/vkgen/vkstruct.h @@ -12,7 +12,7 @@ { string outname; } --(void) forEachFieldCall: (varfunc) func; +-(void) queueFieldTypes; -(qfot_var_t *)findField:(string) fieldName; -(void) writeTable; -(void) writeSymtabInit; diff --git a/libs/video/renderer/vulkan/vkgen/vkstruct.r b/libs/video/renderer/vulkan/vkgen/vkstruct.r index cae352f0b..4d94ac8a5 100644 --- a/libs/video/renderer/vulkan/vkgen/vkstruct.r +++ b/libs/video/renderer/vulkan/vkgen/vkstruct.r @@ -27,12 +27,13 @@ } } --(void) forEachFieldCall: (varfunc) func +-(void) queueFieldTypes { qfot_struct_t *strct =&type.strct; for (int i = 0; i < strct.num_fields; i++) { - func (&strct.fields[i]); + Type *type = [Type findType:var.type]; + [type addToQueue]; } }