fixedmemory leaks in Autoarr

This commit is contained in:
2023-02-13 20:41:41 +06:00
parent 590790817b
commit 00970919d1
19 changed files with 81 additions and 125 deletions

View File

@@ -22,6 +22,7 @@ typedef int64_t i64;
typedef uint64_t u64;
typedef float f32;
typedef double f64;
/// anonymous pointer without specified freeMembers() func
typedef void* Pointer;
// Usually bool from stdbool.h is defined as macro,

View File

@@ -45,6 +45,7 @@ void ktDescriptors_initKerepTypes(){
kt_register(Array_Pointer);
// base type autoarrs
kt_register(Autoarr_Pointer);
kt_register(Autoarr_char);
kt_register(Autoarr_bool);
kt_register(Autoarr_f32);
@@ -57,17 +58,11 @@ void ktDescriptors_initKerepTypes(){
kt_register(Autoarr_u32);
kt_register(Autoarr_i64);
kt_register(Autoarr_u64);
kt_register(Autoarr_Pointer);
// Unitype
kt_register(Unitype);
kt_register(Array_Unitype);
kt_register(Autoarr_Unitype);
// replacing autogenerated freear() function to custom
// in autoarr functions list
__Autoarr_Unitype_functions_list.freear=__Autoarr_Unitype_free_fixed;
// and in type descriptor
ktDescriptor_Autoarr_Unitype.freeMembers=____Autoarr_Unitype_free_fixed;
// STNode
kt_register(STNode);
@@ -75,11 +70,6 @@ void ktDescriptors_initKerepTypes(){
// KeyValuePair
kt_register(KVPair);
kt_register(Autoarr_KVPair);
// replacing autogenerated freear() function to custom
// in autoarr functions list
__Autoarr_KVPair_functions_list.freear=__Autoarr_KVPair_free_fixed;
// and in type descriptor
ktDescriptor_Autoarr_KVPair.freeMembers=____Autoarr_KVPair_free_fixed;
// Hashtable
kt_register(Hashtable);

View File

@@ -2,7 +2,7 @@
#include "type_system.h"
#include "base_toString.h"
kt_define(Pointer, free, __toString_u64);
kt_define(Pointer, NULL, __toString_u64);
kt_define(char,NULL, __toString_char);
kt_define(bool,NULL, __toString_bool);
kt_define(f32, NULL, __toString_f32);