anchor.diff:                      ,id)))))
   
   
  -(define-ir-class IRObject (CORBA:IRObject auto-servant)
  +(define-ir-class IRObject (CORBA:IRObject)
     :id "IDL:omg.org/CORBA/IRObject:1.0"
     :attributes ()
     :defaults ())
  
positive.code:   :slots ((type :initarg :type)) ; add initarg
    :defaults ())
  
  
  (deftype PrimitiveKind ()
    '(member
      :pk_null :pk_void :pk_short :pk_long :pk_ushort :pk_ulong
      :pk_float :pk_double :pk_boolean :pk_char :pk_octet
      :pk_any :pk_TypeCode :pk_Principal :pk_string :pk_objref
      :pk_longlong :pk_ulonglong :pk_longdouble :pk_wchar :pk_wstring))
  
  (defmethod print-object ((obj primitive-def) stream)
    (print-unreadable-object (obj stream :type t :identity t)
      (format stream "~A" (slot-value obj 'kind))))
  
negative.code: 
  (defmethod idltype-tc ((obj union-def))
    (flet ((default-label-p (label)
             (and (not (symbolp label))
                  (eql :tk_octet (op:kind (any-typecode label)))
                                  (= 0 (any-value label)))))
      (create-union-tc (op:id obj) (op:name obj)
                       (op:discriminator_type obj)  
                       (map 'list (lambda (m)
                                    (list (if (default-label-p (op:label m))
                                            'default
                                            (op:label m))
                                          (op:name m)
                                          (op:type m)))
                            (op:members obj)))))
  
  
  