Here's my .xmodmaprc, with trouble lines in bold:
Code:
! -*- comment-start: "!" -*-
! make capslock behave like control
remove Lock = Caps_Lock
add Control = Caps_Lock
keysym Caps_Lock = Control_L

! make left control behave like hyper
remove Control = Control_L
! this line is troublesome
! add Mod3 = Control_L            
keysym Control_L = Hyper_L Hyper_L Hyper_L

! make right alt behave like backspace
! this next line doesn't work but doesn't error
remove Mod1    = BackSpace      
remove Mod4    = BackSpace
! depressingly, putting this next line before the previous two makes the "remove Control = Control_L" line not work
keysym Alt_R = BackSpace BackSpace BackSpace
The commented-out "add Mod3 = Control_L" causes the following error when not commented out:
Code:
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  118 (X_SetModifierMapping)
  Value in failed request:  0x17
  Serial number of failed request:  18
  Current serial number in output stream:  18
Right now I manually finish the job with xkeycaps every time I start X. I don't have much hope that I'll get xmodmap to work properly, but perhaps someone knows something?