For purposes of type checking I would like to define a function on the lines of
void myfunc(type1 a, type2 b) { ... }
where type1
type1
I think you can wrap your types using struct and then pass pointer to these structs.
You could wrap the two types in a Struct.
typedef struct { uint8_t data; } type1; typedef struct { uint8_t data; } type2;
Edit: I don't like it because you now have to use a.data instead of a