The ampqgen.rb script appends an underscore to attributes that may conflict with attributes that may already exist in object. The issue is with 'type'. It is an attribute in ruby 1.8.x but not in 1.9.x. The code accesses a type_ attribute in the code which doesn't actually exist when running under 1.9.x because type isn't an attribute. The fis is a simple special case for the type symbol.