I'm generating C# binding for C/C++ code.
enum usually works fine, but with Apple's 4-char enum, 
the 4-char enums get directly used on the C# side 

The C++ prototype:

enum AudioSessionCategory
kAudioSessionCategory_AmbientSound               = 'ambi',
kAudioSessionCategory_SoloAmbientSound           = 'solo',
kAudioSessionCategory_PlayAndRecord              = 'plar'

I got translated C# enum

public enum AudioSessionCategory {
  kAudioSessionCategory_AmbientSound = 'ambi',
  kAudioSessionCategory_SoloAmbientSound = 'solo',
  kAudioSessionCategory_PlayAndRecord = 'plar'

and cause compiler errors:

    error CS1012: Too many characters in character literal

Should I write a typemap for these enums and how?