anchor.diff:          s := ReadToken(False);
           If s = '<' Then
             readElement(e)
  -        else  if s = '<!' then
  -          readComment(e);
  +        else if s = '<!' then
  +          readComment(e)
  +        else if s = '<?' then
  +          readInstruction(e);
         end;
         s := ReadToken(false);
         rule(s = e.Name, 'Element name mismatch (start: "'+e.Name+'"/ end: "'+s+'")');
  
positive.code:         ReadComment(result);
          s := ReadToken(true);
        end;
        ReadElement(result);
        result.fixChildren;
        result.Link;
  
negative.code: 
  procedure TMXmlElement.SetText(const Value: string);
  begin
    if NodeType in [ntText, ntComment, ntProcessingInstruction] then
      FText := Value
    else
      raise EXmlException.create('Unable to set text at Row '+inttostr(FStart.line)+' column '+inttostr(FStart.col));
  