anchor.diff:      if src_t.nestedCommentsCount <> nestedCommentsCount then exit(1);
       if src_t.tokenStringBracketsCount <> tokenStringBracketsCount then exit(1);
       if src_t.rString <> rString then exit(1);
  +    if src_t.namedRegionCount <> namedRegionCount then exit(1);
       exit(0);
     end;
   end;
  
positive.code:   TRangeKinds = set of TRangeKind;
  
    // defines the ranges which can be folded
    TFoldKinds = set of (fkBrackets, fkComments1, fkComments2, fkStrings);
  
    // internal class used to keep trace of the useful informations of the previous line
    TSynD2SynRange = class(TSynCustomHighlighterRange)
    private
      nestedCommentsCount: Integer;
      tokenStringBracketsCount: Integer;
      rangeKinds: TRangeKinds;
  
negative.code:     exit;
    end;
  
    // line comment / region beg-end
    if (fCurrRange.rangeKinds = []) or (fCurrRange.rangeKinds = [rkAsm]) then if readDelim(reader, fTokStop, '//') then
    begin
      fTokKind := tkCommt;
      if readDelim(reader, fTokStop, '/') then
        fTokKind := tkDDocs;
      readLine(reader, fTokStop);
      if (fkRegion in fFoldKinds) and (fTokStop - fTokStart > 4) then
      begin
        Dec(reader,4);
        Dec(fTokStop,4);
        if reader = '---+'#10 then
        begin
          fCurrRange.namedRegionCount += 1;
          StartCodeFoldBlock(nil);
        end
        else if (reader = '----'#10) and (fCurrRange.namedRegionCount > 0) then
        begin
          EndCodeFoldBlock();
          fCurrRange.namedRegionCount -= 1;
        end;
        readLine(reader, fTokStop);
      end;
      exit;
    end else readerReset;
  
  