Bit fields, like in C

Hmm, I thought you were talking about C bitfields (although they are not macros):

struct S {
    int one:1;
    int two:2, three: 3; 
}

as @QuinceyMorris pointed out above they were never standardised and compilers do them differently.

See this message, it shows how we can achieve something similar with Swift macros.