anchor.diff:                      ^(OP_LOGICAL_AND[$TAG_START_ADD, "and"]
                           $ver1 $ver2)
                       $cond)
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
           -> {has_ver1 && !has_ver2 && has_cond}?
              ^(IF[$TAG_START_ADD, "if"]
                   ^(OP_LOGICAL_AND[$TAG_START_ADD, "and"] $ver1 $cond)
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
           -> {!has_ver1 && has_ver2 && has_cond}?
              ^(IF[$TAG_START_ADD, "if"]
                   ^(OP_LOGICAL_AND[$TAG_START_ADD, "and"] $ver2 $cond)
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
           -> {!has_ver1 && !has_ver2 && has_cond}?
              ^(IF[$TAG_START_ADD, "if"]
                   $cond
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
           // !has_cond
           -> {has_ver1 && has_ver2 && !has_cond}?
              ^(IF[$TAG_START_ADD, "if"]
                   ^(OP_LOGICAL_AND[$TAG_START_ADD, "and"] $ver1 $ver2)
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
           -> {has_ver1 && !has_ver2 && !has_cond}?
              ^(IF[$TAG_START_ADD, "if"]
                   $ver1
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
           -> {!has_ver1 && has_ver2 && !has_cond}?
              ^(IF[$TAG_START_ADD, "if"]
                   $ver2
  -                ^(FIELDDEF ^(DOC $doc) $type $name))
  -        -> ^(FIELDDEF ^(DOC $doc) $type $name)
  +                ^(FIELDDEF ^(DOC $doc?) $type $name))
  +        -> ^(FIELDDEF ^(DOC $doc?) $type $name)
       ;
   
   attr_variable_name
  
positive.code:     	doc=SHORTDOC*
          enum_option+
          TAG_END_BITFLAGS SHORTDOC*
          -> ^(ENUMDEF ^(DOC $doc) $name $type enum_option+)
      ;
  
  struct_add
  
negative.code:         | TAG_END
          )
          SHORTDOC*
          -> ^(ENUMCONSTDEF ^(DOC $doc?) $name $value)
      ;
  
  structdefine
  