libk  Diff

Differences From Artifact [e8670496c8]:

To Artifact [09be45a2b3]:


     7      7   #endif
     8      8   
     9      9   #ifdef __cplusplus
    10     10   extern "C" {
    11     11   #endif
           12  +
           13  +typedef enum kmcond {
           14  +	kmcond_ok,
           15  +	kmcond_bad_address,
           16  +} kmcond;
    12     17   
    13     18   typedef enum kmkind {
    14     19   	kmkind_none,
    15     20   	kmkind_heap,
    16     21   	kmkind_pool,
................................................................................
    27     32   	kmkind kind;
    28     33   	sz size;
    29     34   	kmshred shred;
    30     35   	sz refs;
    31     36   	struct kmcell* src;
    32         -	char data[];
    33     37   } kmcell;
    34     38   
    35     39   typedef struct kmptr {
    36     40   	kmkind kind;
    37     41   	kmshred shred;
................................................................................
    39     43   	kmcell* cell;
    40     44   } kmptr;
    41     45   
    42     46   /* heap functions */
    43     47   
    44         -void* kmheapa(sz);
    45         -void  kmheapf(void*);
           48  +void*  kmheapa(sz);
           49  +kmcond kmheapf(void*);
    46     50   
    47     51   #ifdef __cplusplus
    48     52   }
    49     53   #endif
    50     54   
    51     55   #endif