Changeset 4 for trunk


Ignore:
Timestamp:
Nov 5, 2010, 7:24:45 AM (14 years ago)
Author:
george
Message:
  • Modified: Reorganize parser code to use logical separated functions.
Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Compiler/Analyze/UParser.pas

    r3 r4  
    8787    FOnErrorMessage(Format(Text, Arguments),
    8888      TToken(Tokens[TokenIndex + TokenOffset]).CodePosition, FileName);
     89    Log('Error: ' + Format(Text, Arguments));
    8990  end;
    9091end;
  • trunk/Compiler/Analyze/UPascalParser.pas

    r3 r4  
    1919    function ParseFile(Name: string): Boolean;
    2020    function ParseWhileDo(var WhileDo: TWhileDo; SourceCode: TCommonBlock): Boolean;
    21     procedure ParseExpression(SourceCode: TExpression);
    22     function ParseRightValue(SourceCode: TExpression): TObject;
    23     function ParseFunctionCall(SourceCode: TExpression): TObject;
     21    function ParseExpression(SourceCode: TExpression): Boolean;
     22    function ParseExpressionParenthases(SourceCode: TExpression;
     23      Expressions: TListExpression): Boolean;
     24    function ParseExpressionOperator(SourceCode: TExpression;
     25      Expressions: TListExpression): Boolean;
     26    function ParseExpressionRightValue(SourceCode: TExpression;
     27      Expressions: TListExpression): Boolean;
     28    function ParseExpressionFunctionCall(SourceCode: TExpression;
     29      Expressions: TListExpression; var Func: TFunction): Boolean;
    2430    function ParseUses(SourceCode: TUsedModuleList; AExported: Boolean): Boolean;
    2531    function ParseModule(ProgramCode: TProgram): TModule;
     
    3743    function ParseIfThenElse(var IfThenElse: TIfThenElse; SourceCode: TCommonBlock): Boolean;
    3844    function ParseForToDo(var ForToDo: TForToDo; SourceCode: TCommonBlock): Boolean;
     45    function ParseAssigment(var Assignment: TAssignment; SourceCode: TCommonBlock): Boolean;
     46    function ParseFunctionCall(var Call: TFunctionCall; SourceCode: TCommonBlock): Boolean;
    3947    function ParseVariableList(SourceCode: TVariableList; Exported: Boolean = False): Boolean;
    4048    procedure ParseVariable(SourceCode: TVariableList; Exported: Boolean = False);
     
    4351    function ParseTypeList(SourceCode: TTypeList; Exported: Boolean = False;
    4452      AssignSymbol: string = '='): Boolean;
    45     function ParseType(TypeList: TTypeList; ExpectName: Boolean = True; AssignSymbol: string = '='): TType;
    46     function ParseTypeSubType(TypeList: TTypeList; Name: string; ExpectName: Boolean): TType;
     53    function ParseType(TypeList: TTypeList; ExpectName: Boolean = True;
     54      AssignSymbol: string = '='; ForwardDeclaration: Boolean = False): TType;
     55    function ParseTypeSubType(TypeList: TTypeList; Name: string;
     56      ExpectName: Boolean; ForwardDeclaration: Boolean): TType;
    4757    function ParseTypeBase(TypeList: TTypeList; Name: string): TType;
    4858    function ParseTypePointer(TypeList: TTypeList; Name: string): TType;
     
    125135{ TExpression }
    126136
    127 procedure TPascalParser.ParseExpression(SourceCode: TExpression);
    128 var
    129   Identifier: string;
    130   IdentifierType: TTokenType;
     137function TPascalParser.ParseExpression(SourceCode: TExpression): Boolean;
     138var
    131139  NewVariable: TVariable;
    132140  NewExpression: TExpression;
     
    135143  UseType: TType;
    136144  //  Brackets: Integer;
    137   Expressions: TExpressionList;
     145  Expressions: TListExpression;
    138146  I: integer;
    139147  II: integer;
    140   RightValue: TObject;
    141 begin
    142   Expressions := TExpressionList.Create;
    143   Expressions.Add(TExpression.Create);
    144   with SourceCode do begin
    145     while ((NextToken <> ';') and (NextToken <> ',') and (not IsKeyWord(NextToken))) and not
    146       (((NextToken = ')') or (NextToken = ']'))) and not (NextTokenType = ttEndOfFile) do begin
    147       IdentifierType := NextTokenType;
    148       if NextToken = '(' then begin
    149         Expect('(');
    150         // Subexpression
    151         with TExpression(Expressions.Last) do begin
    152           SubItems[1] := TExpression.Create;
    153           TExpression(SubItems[1]).CommonBlock := SourceCode.CommonBlock;
    154           ParseExpression(TExpression(SubItems[1]));
    155         end;
    156         with TExpression(Expressions.Items[Expressions.Add(TExpression.Create)]) do
    157         begin
    158           CommonBlock := SourceCode.CommonBlock;
    159           SubItems[0] := TExpression(Expressions[Expressions.Count - 2]).SubItems[1];
    160         end;
    161         Expect(')');
    162       end else
    163       if IsOperator(NextToken) then begin
    164         // Operator
    165         TExpression(Expressions.Last).OperatorName := ReadToken;
    166         TExpression(Expressions.Last).NodeType := ntOperator;
    167       end else begin
    168         RightValue := ParseRightValue(SourceCode);
    169         if Assigned(RightValue) then begin
    170           with TExpression(Expressions.Last) do begin
    171             SubItems[1] := TExpression.Create;
    172             TExpression(SubItems[1]).CommonBlock := SourceCode.CommonBlock;
    173             if RightValue is TVariable then begin
    174               TExpression(SubItems[1]).NodeType := ntVariable;
    175               TExpression(SubItems[1]).Variable := TVariable(RightValue);
    176             end;
    177             if RightValue is TConstant then begin
    178               TExpression(SubItems[1]).NodeType := ntConstant;
    179               TExpression(SubItems[1]).Constant := TConstant(RightValue);
    180             end;
    181             if RightValue is TFunctionCall then begin
    182               TExpression(SubItems[1]).NodeType := ntFunction;
    183               TExpression(SubItems[1]).FunctionCall := TFunction(RightValue);
    184             end;
    185           end;
    186           with TExpression(Expressions.Items[Expressions.Add(TExpression.Create)]) do
    187           begin
    188             CommonBlock := SourceCode.CommonBlock;
    189             SubItems[0] := TExpression(Expressions[Expressions.Count - 2]).SubItems[1];
    190           end;
    191         end else begin
     148begin
     149  try
     150    Expressions := TListExpression.Create;
     151    Expressions.Add(TExpression.Create);
     152    with SourceCode do begin
     153      while ((NextToken <> ';') and (NextToken <> ',') and (not IsKeyWord(NextToken))) and not
     154        (((NextToken = ')') or (NextToken = ']'))) and not (NextTokenType = ttEndOfFile) do begin
     155        if not ParseExpressionParenthases(SourceCode, Expressions) then
     156        if not ParseExpressionOperator(SourceCode, Expressions) then
     157        if not ParseExpressionRightValue(SourceCode, Expressions) then begin
    192158          ErrorMessage(SInvalidAssignmentValue, [NextToken]);
    193159          ReadToken;
    194160        end;
    195161      end;
    196     end;
    197 
    198     // Build expression tree
    199     for II := 0 to High(Operators) do begin
    200       I := 1;
    201       while (I < Expressions.Count - 1) do begin
    202         if not TExpression(Expressions[I]).Associated and
    203           (TExpression(Expressions[I]).OperatorName = Operators[II]) then
    204         begin
    205           TExpression(Expressions[I]).Associated := True;
    206           TExpression(Expressions[I - 1]).SubItems[1] := Expressions[I];
    207           TExpression(Expressions[I + 1]).SubItems[0] := Expressions[I];
    208           //Expressions.Delete(I);
    209         end else Inc(I);
    210       end;
    211     end;
    212     if Assigned(TExpression(Expressions.First).SubItems[1]) then
    213       Assign(TExpression(TExpression(Expressions.First).SubItems[1]));
    214     TExpression(Expressions.First).SubItems[1] := nil;
    215     //ShowMessage(IntToStr(Expressions.Count));
    216     if Expressions.Count > 1 then
    217       TExpression(Expressions[1]).SubItems[0] := nil;
     162
     163      // Build expression tree using operator precedence
     164      for II := 0 to High(Operators) do begin
     165        I := 1;
     166        while (I < Expressions.Count - 1) do begin
     167          if not Expressions[I].Associated and
     168            (Expressions[I].OperatorName = Operators[II]) then
     169          begin
     170            Expressions[I].Associated := True;
     171            Expressions[I - 1].SubItems.Last := Expressions[I];
     172            Expressions[I + 1].SubItems.First := Expressions[I];
     173            //Expressions.Delete(I);
     174          end else Inc(I);
     175        end;
     176      end;
     177      if Assigned(Expressions.First.SubItems.Last) then
     178        Assign(Expressions.First.SubItems.Last);
     179      Expressions.First.SubItems.Last := nil;
     180      //ShowMessage(IntToStr(Expressions.Count));
     181      if Expressions.Count > 1 then
     182        Expressions[1].SubItems.First := nil;
     183    end;
     184  finally
    218185    Expressions.Free;
    219186  end;
    220187end;
    221188
    222 function TPascalParser.ParseRightValue(SourceCode: TExpression): TObject;
     189function TPascalParser.ParseExpressionParenthases(SourceCode: TExpression;
     190  Expressions: TListExpression): Boolean;
     191var
     192  NewExpression: TExpression;
     193begin
     194  if NextToken = '(' then begin
     195    Expect('(');
     196    // Subexpression
     197    NewExpression := TExpression.Create;
     198    NewExpression.CommonBlock := SourceCode.CommonBlock;
     199    ParseExpression(NewExpression);
     200
     201    Expressions.Last.SubItems.Last := NewExpression;
     202    with Expressions.Items[Expressions.Add(TExpression.Create)] do
     203    begin
     204      CommonBlock := SourceCode.CommonBlock;
     205      SubItems.First := NewExpression;
     206    end;
     207    Expect(')');
     208    Result := True;
     209  end else Result := False;
     210end;
     211
     212function TPascalParser.ParseExpressionOperator(SourceCode: TExpression;
     213  Expressions: TListExpression): Boolean;
     214begin
     215  if IsOperator(NextToken) then begin
     216    // Operator
     217    Expressions.Last.OperatorName := ReadToken;
     218    Expressions.Last.NodeType := ntOperator;
     219    Result := True;
     220  end else Result := False;
     221end;
     222
     223function TPascalParser.ParseExpressionRightValue(SourceCode: TExpression;
     224  Expressions: TListExpression): Boolean;
    223225var
    224226  UseType: TType;
     
    226228  UseConstant: TConstant;
    227229  UseFunction: TFunction;
     230  NewExpression: TExpression;
    228231  Identifier: string;
    229 begin
    230   Result := nil;
     232  O: TObject;
     233begin
     234  O := nil;
    231235  with SourceCode do
    232236  if IsIdentificator(NextToken) then begin
     
    240244        UseVariable := TTypeRecord(UseType).CommonBlock.Variables.Search(Identifier);
    241245        if Assigned(UseVariable) then begin
    242           Result := UseVariable;
    243         end;
    244         if not Assigned(Result) then begin
     246          O := UseVariable;
     247        end;
     248        if not Assigned(O) then begin
    245249          UseFunction := TTypeRecord(UseType).CommonBlock.Functions.Search(Identifier);
    246250          if Assigned(UseFunction) then begin
    247             Result := UseFunction;
     251            O := UseFunction;
    248252          end;
    249253        end;
    250         if not Assigned(Result) then
     254        if not Assigned(O) then
    251255          ErrorMessage(SUndefinedVariable, [Identifier]);
    252256      end else ErrorMessage(SIllegalExpression, [Identifier]);
    253257    end;
    254     if not Assigned(Result) then begin
     258    if not Assigned(O) then begin
    255259      UseVariable := CommonBlock.Variables.Search(Identifier);
    256260      if Assigned(UseVariable) then begin
    257261        // Referenced variable
    258262        ReadToken;
    259         Result := UseVariable;
    260       end;
    261     end;
    262     if not Assigned(Result) then begin
    263       Result := ParseFunctionCall(SourceCode);
    264     end;
    265     if not Assigned(Result) then begin
     263        NewExpression := TExpression.Create;
     264        NewExpression.CommonBlock := SourceCode.CommonBlock;
     265        NewExpression.NodeType := ntVariable;
     266        NewExpression.Variable := TVariable(UseVariable);
     267        SubItems.Last := NewExpression;
     268      end;
     269    end;
     270    if not Assigned(O) then begin
     271      ParseExpressionFunctionCall(SourceCode, Expressions, TFunction(O));
     272      NewExpression := TExpression.Create;
     273      NewExpression.CommonBlock := SourceCode.CommonBlock;
     274      NewExpression.NodeType := ntFunction;
     275      NewExpression.FunctionCall := TFunction(O);
     276      SubItems.Last := NewExpression;
     277    end;
     278    if not Assigned(O) then begin
    266279      UseConstant := CommonBlock.Constants.Search(NextToken);
    267280      if Assigned(UseConstant) then begin
    268281        ReadToken;
    269         Result := UseConstant;
    270       end;
    271     end;
    272     if not Assigned(Result) then begin
     282        O := UseConstant;
     283        NewExpression := TExpression.Create;
     284        NewExpression.CommonBlock := SourceCode.CommonBlock;
     285        NewExpression.NodeType := ntConstant;
     286        NewExpression.Constant := TConstant(O);
     287        SubItems.Last := NewExpression;
     288      end;
     289    end;
     290    if not Assigned(O) then begin
    273291      // Constant value
    274       Result := TConstant.Create;
    275       TConstant(Result).Value := ReadToken;
    276     end;
    277     if not Assigned(Result) then begin
     292      O := TConstant.Create;
     293      TConstant(O).Value := ReadToken;
     294      NewExpression := TExpression.Create;
     295      NewExpression.CommonBlock := SourceCode.CommonBlock;
     296      NewExpression.NodeType := ntConstant;
     297      NewExpression.Constant := TConstant(O);
     298      SubItems.Last := NewExpression;
     299    end;
     300    if not Assigned(O) then begin
    278301      ErrorMessage(SUnknownIdentifier, [ReadToken]);
    279302    end;
    280   end else Result := nil;
    281 end;
    282 
    283 function TPascalParser.ParseFunctionCall(SourceCode: TExpression): TObject;
     303
     304    with Expressions.Items[Expressions.Add(TExpression.Create)] do
     305    begin
     306      CommonBlock := SourceCode.CommonBlock;
     307      SubItems.First := NewExpression;
     308    end;
     309    Result := True;
     310  end else Result := False;
     311end;
     312
     313function TPascalParser.ParseExpressionFunctionCall(SourceCode: TExpression;
     314  Expressions: TListExpression; var Func: TFunction): Boolean;
    284315var
    285316  UseFunction: TFunction;
    286317begin
    287   Result := nil;
     318  Func := nil;
    288319  with SourceCode do begin
    289320    UseFunction := CommonBlock.Functions.Search(NextToken);
    290321    if Assigned(UseFunction) then begin
    291322      ReadToken;
    292       Result := UseFunction;
     323      Func := UseFunction;
    293324      if NextToken = '(' then begin
    294325        Expect('(');
     
    298329        end;
    299330      end;
    300     end;
     331      Result := True;
     332    end else Result := False;
    301333  end;
    302334end;
     
    319351    if not ParseWhileDo(TWhileDo(Result), SourceCode) then
    320352    if not ParseForToDo(TForToDo(Result), SourceCode) then
    321     if IsIdentificator(NextToken) then begin
    322       if Assigned(SourceCode.Variables.Search(NextToken)) then begin
    323         // Variable assignment
    324         Result := TAssignment.Create;
    325         TAssignment(Result).CommonBlock := SourceCode;
    326         IdentName := ReadToken;
    327         TAssignment(Result).Target := SourceCode.Variables.Search(IdentName);
    328         Expect(':=');
    329         TAssignment(Result).Source := TExpression.Create;
    330         TAssignment(Result).Source.CommonBlock := SourceCode;
    331         ParseExpression(TAssignment(Result).Source);
    332       end else
    333       if Assigned(SourceCode.Functions.Search(NextToken)) then begin
    334         // Function call
    335         FunctionName := ReadToken;
    336         Result := TFunctionCall.Create;
    337         TFunctionCall(Result).CommonBlock := SourceCode;
    338         TFunctionCall(Result).FunctionRef := SourceCode.Functions.Search(FunctionName);
    339         if NextToken = '(' then
    340         begin
    341           Expect('(');
    342           with TFunctionCall(Result) do
    343           begin
    344             ParameterExpression.Add(TExpression.Create);
    345             TExpression(ParameterExpression.Last).CommonBlock := SourceCode;
    346             ParseExpression(TExpression(ParameterExpression.Last));
    347           end;
    348           Expect(')');
    349         end;
    350       end else begin
    351         Result := nil;
    352         ErrorMessage(SUnknownIdentifier, [ReadToken], -1);
    353       end;
    354     end else
     353    if not ParseAssigment(TAssignment(Result), SourceCode) then
     354    if not ParseFunctionCall(TFunctionCall(Result), SourceCode) then
    355355    if NextToken = ';' then
    356356      Result := nil
     
    726726end;
    727727
     728function TPascalParser.ParseAssigment(var Assignment: TAssignment;
     729  SourceCode: TCommonBlock): Boolean;
     730var
     731  Variable: TVariable;
     732  IdentName: string;
     733begin
     734  if IsIdentificator(NextToken) then begin
     735    Variable := SourceCode.Variables.Search(NextToken);
     736    if Assigned(Variable) then begin
     737      // Variable assignment
     738      Assignment := TAssignment.Create;
     739      Assignment.CommonBlock := SourceCode;
     740      IdentName := ReadToken;
     741      Assignment.Target := SourceCode.Variables.Search(IdentName);
     742      Expect(':=');
     743      Assignment.Source := TExpression.Create;
     744      Assignment.Source.CommonBlock := SourceCode;
     745      ParseExpression(Assignment.Source);
     746      Result := True;
     747    end else Result := False;
     748  end else Result := False;
     749end;
     750
     751function TPascalParser.ParseFunctionCall(var Call: TFunctionCall;
     752  SourceCode: TCommonBlock): Boolean;
     753var
     754  FunctionName: string;
     755begin
     756  if IsIdentificator(NextToken) then begin
     757    if Assigned(SourceCode.Functions.Search(NextToken)) then begin
     758      // Function call
     759      FunctionName := ReadToken;
     760      Call := TFunctionCall.Create;
     761      Call.CommonBlock := SourceCode;
     762      Call.FunctionRef := SourceCode.Functions.Search(FunctionName);
     763      if NextToken = '(' then begin
     764        Expect('(');
     765        with Call do begin
     766          ParameterExpression.Add(TExpression.Create);
     767          ParameterExpression.Last.CommonBlock := SourceCode;
     768          ParseExpression(ParameterExpression.Last);
     769        end;
     770        Expect(')');
     771      end;
     772      Result := True;
     773    end else Result := False;
     774  end else Result := False;
     775end;
     776
    728777{ TParserVariableList }
    729778
     
    877926
    878927function TPascalParser.ParseType(TypeList: TTypeList; ExpectName: Boolean = True;
    879   AssignSymbol: string = '='): TType;
     928  AssignSymbol: string = '='; ForwardDeclaration: Boolean = False): TType;
    880929var
    881930  Name: string;
     
    894943    if not Assigned(Result) then Result := ParseTypePointer(TypeList, Name);
    895944    if not Assigned(Result) then Result := ParseTypeBase(TypeList, Name);
    896     if not Assigned(Result) then Result := ParseTypeSubType(TypeList, Name, ExpectName);
     945    if not Assigned(Result) then Result := ParseTypeSubType(TypeList, Name,
     946      ExpectName, ForwardDeclaration);
    897947    if not Assigned(Result) then Result := ParseTypeSubRange(TypeList, Name);
    898     if not Assigned(Result) then
     948    if not Assigned(Result) then begin
    899949      ErrorMessage(SInvalidConstruction, []);
     950    end;
    900951  end;
    901952end;
    902953
    903954function TPascalParser.ParseTypeSubType(TypeList: TTypeList; Name: string;
    904   ExpectName: Boolean): TType;
     955  ExpectName: Boolean; ForwardDeclaration: Boolean): TType;
    905956var
    906957  TypeName: string;
     
    918969    end else begin
    919970      TType(Result) := TypeList.Search(TypeName);
    920       if not Assigned(TType(Result)) then
    921         ErrorMessage(SUndefinedType, [TypeName], -1);
     971      if not Assigned(TType(Result)) then begin
     972        if ForwardDeclaration then begin
     973          // ForwardDeclaration
     974          Result := TType.Create;
     975          TType(Result).Parent := TypeList;
     976          TType(Result).Name := TypeName;
     977          TType(Result).UsedType := nil;
     978        end else
     979          ErrorMessage(SUndefinedType, [TypeName], -1);
     980      end;
    922981    end;
    923982  end else Result := nil;
     
    9481007    TTypePointer(Result).Parent := TypeList;
    9491008    TTypePointer(Result).Name := Name;
    950     TTypePointer(Result).UsedType := ParseType(TypeList, False);
     1009    TTypePointer(Result).UsedType := ParseType(TypeList, False, '=', True);
    9511010  end else Result := nil;
    9521011end;
  • trunk/Compiler/USourceCode.pas

    r2 r4  
    2525  TVariableList = class;
    2626  TFunctionList = class;
    27   TExpressionList = class;
     27  TListExpression = class;
    2828  TExpression = class;
    2929  TFunction = class;
     
    331331    Value: TValue;
    332332    OperatorName: string;
    333     SubItems: TExpressionList;
     333    SubItems: TListExpression;
    334334    Associated: Boolean;
    335335    constructor Create;
    336336    destructor Destroy; override;
    337337    procedure Assign(Source: TExpression);
    338   end;
    339 
    340   TExpressionList = class(TListExpression)
    341     destructor Destroy; override;
    342338  end;
    343339
     
    789785constructor TExpression.Create;
    790786begin
    791   SubItems := TExpressionList.Create;
     787  SubItems := TListExpression.Create;
    792788  SubItems.Count := 2;
    793789  SubItems.OwnsObjects := False;
     
    810806  Variable := Source.Variable;
    811807  SubItems.Assign(Source.SubItems);
    812 end;
    813 
    814 { TExpressionList }
    815 
    816 destructor TExpressionList.Destroy;
    817 begin
    818   inherited;
    819808end;
    820809
  • trunk/Forms/UMainForm.pas

    r3 r4  
    101101  with TProjectFile(Project.Items[0]) do begin
    102102    Compiler.TargetFolder := Project.RootDir;
    103     Compiler.Compile(Parent.GetDir + Name, Source);
     103    Compiler.Compile(Parent.GetDir + ExtractFileNameOnly(Name), Source);
    104104  end;
    105105
  • trunk/Project/System.pas

    r2 r4  
    3131  String = array of Char;
    3232  Pointer = ^Void;
    33   TObject = class;
     33  TObject = class
     34    function ClassName: string;
     35    constructor Create; internal;
     36    destructor Destroy; internal;
     37  end;
    3438
    3539const
  • trunk/Transpascal.lpi

    r3 r4  
    5353      </Item5>
    5454    </RequiredPackages>
    55     <Units Count="81">
     55    <Units Count="77">
    5656      <Unit0>
    5757        <Filename Value="Transpascal.lpr"/>
     
    7171        <ResourceBaseClass Value="Form"/>
    7272        <UnitName Value="UMainForm"/>
    73         <EditorIndex Value="2"/>
    74         <WindowIndex Value="0"/>
    75         <TopLine Value="82"/>
    76         <CursorPos X="1" Y="103"/>
     73        <EditorIndex Value="1"/>
     74        <WindowIndex Value="0"/>
     75        <TopLine Value="90"/>
     76        <CursorPos X="30" Y="104"/>
    7777        <UsageCount Value="215"/>
    7878        <Loaded Value="True"/>
     
    9595        <TopLine Value="745"/>
    9696        <CursorPos X="46" Y="759"/>
    97         <UsageCount Value="139"/>
     97        <UsageCount Value="135"/>
    9898        <DefaultSyntaxHighlighter Value="Delphi"/>
    9999      </Unit3>
     
    104104        <TopLine Value="1"/>
    105105        <CursorPos X="40" Y="11"/>
    106         <UsageCount Value="139"/>
     106        <UsageCount Value="135"/>
    107107        <DefaultSyntaxHighlighter Value="Delphi"/>
    108108      </Unit4>
     
    113113        <TopLine Value="187"/>
    114114        <CursorPos X="34" Y="201"/>
    115         <UsageCount Value="139"/>
     115        <UsageCount Value="135"/>
    116116      </Unit5>
    117117      <Unit6>
     
    121121        <TopLine Value="1"/>
    122122        <CursorPos X="1" Y="14"/>
    123         <UsageCount Value="139"/>
     123        <UsageCount Value="135"/>
    124124      </Unit6>
    125125      <Unit7>
     
    129129        <TopLine Value="124"/>
    130130        <CursorPos X="42" Y="136"/>
    131         <UsageCount Value="139"/>
     131        <UsageCount Value="135"/>
    132132      </Unit7>
    133133      <Unit8>
     
    137137        <TopLine Value="442"/>
    138138        <CursorPos X="47" Y="455"/>
    139         <UsageCount Value="139"/>
     139        <UsageCount Value="135"/>
    140140      </Unit8>
    141141      <Unit9>
     
    145145        <TopLine Value="78"/>
    146146        <CursorPos X="27" Y="86"/>
    147         <UsageCount Value="31"/>
     147        <UsageCount Value="27"/>
    148148      </Unit9>
    149149      <Unit10>
     
    152152        <TopLine Value="61"/>
    153153        <CursorPos X="7" Y="68"/>
    154         <UsageCount Value="41"/>
     154        <UsageCount Value="37"/>
    155155      </Unit10>
    156156      <Unit11>
     
    159159        <TopLine Value="139"/>
    160160        <CursorPos X="16" Y="146"/>
    161         <UsageCount Value="41"/>
     161        <UsageCount Value="37"/>
    162162      </Unit11>
    163163      <Unit12>
     
    167167        <TopLine Value="69"/>
    168168        <CursorPos X="1" Y="82"/>
    169         <UsageCount Value="101"/>
     169        <UsageCount Value="97"/>
    170170      </Unit12>
    171171      <Unit13>
    172         <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\objpas\classes\classesh.inc"/>
    173         <WindowIndex Value="0"/>
    174         <TopLine Value="591"/>
    175         <CursorPos X="3" Y="604"/>
    176         <UsageCount Value="3"/>
     172        <Filename Value="Produce\UProducerPascal.pas"/>
     173        <UnitName Value="UProducerPascal"/>
     174        <WindowIndex Value="0"/>
     175        <TopLine Value="320"/>
     176        <CursorPos X="1" Y="327"/>
     177        <UsageCount Value="51"/>
    177178      </Unit13>
    178179      <Unit14>
    179         <Filename Value="Produce\UProducerPascal.pas"/>
    180         <UnitName Value="UProducerPascal"/>
    181         <WindowIndex Value="0"/>
    182         <TopLine Value="320"/>
    183         <CursorPos X="1" Y="327"/>
    184         <UsageCount Value="55"/>
    185       </Unit14>
    186       <Unit15>
    187180        <Filename Value="UProject.pas"/>
    188181        <IsPartOfProject Value="True"/>
    189182        <UnitName Value="UProject"/>
    190         <EditorIndex Value="7"/>
     183        <EditorIndex Value="8"/>
    191184        <WindowIndex Value="0"/>
    192185        <TopLine Value="4"/>
     
    195188        <Loaded Value="True"/>
    196189        <DefaultSyntaxHighlighter Value="Delphi"/>
     190      </Unit14>
     191      <Unit15>
     192        <Filename Value="Compiler\TranspascalCompiler.pas"/>
     193        <UnitName Value="TranspascalCompiler"/>
     194        <WindowIndex Value="0"/>
     195        <TopLine Value="1"/>
     196        <CursorPos X="33" Y="1"/>
     197        <UsageCount Value="15"/>
    197198      </Unit15>
    198199      <Unit16>
    199         <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\inc\wstringh.inc"/>
    200         <WindowIndex Value="0"/>
    201         <TopLine Value="17"/>
    202         <CursorPos X="11" Y="30"/>
    203         <UsageCount Value="4"/>
     200        <Filename Value="Compiler\UCompiler.pas"/>
     201        <UnitName Value="UCompiler"/>
     202        <EditorIndex Value="3"/>
     203        <WindowIndex Value="0"/>
     204        <TopLine Value="70"/>
     205        <CursorPos X="20" Y="82"/>
     206        <UsageCount Value="102"/>
     207        <Loaded Value="True"/>
    204208      </Unit16>
    205209      <Unit17>
    206         <Filename Value="Compiler\TranspascalCompiler.pas"/>
    207         <UnitName Value="TranspascalCompiler"/>
    208         <WindowIndex Value="0"/>
    209         <TopLine Value="1"/>
    210         <CursorPos X="33" Y="1"/>
    211         <UsageCount Value="19"/>
    212       </Unit17>
    213       <Unit18>
    214         <Filename Value="Compiler\UCompiler.pas"/>
    215         <UnitName Value="UCompiler"/>
    216         <IsVisibleTab Value="True"/>
    217         <EditorIndex Value="4"/>
    218         <WindowIndex Value="0"/>
    219         <TopLine Value="59"/>
    220         <CursorPos X="14" Y="68"/>
    221         <UsageCount Value="102"/>
    222         <Loaded Value="True"/>
    223       </Unit18>
    224       <Unit19>
    225210        <Filename Value="Compiler\USourceCode.pas"/>
    226211        <UnitName Value="USourceCode"/>
    227212        <EditorIndex Value="0"/>
    228213        <WindowIndex Value="0"/>
    229         <TopLine Value="1037"/>
    230         <CursorPos X="60" Y="1040"/>
     214        <TopLine Value="322"/>
     215        <CursorPos X="17" Y="335"/>
    231216        <UsageCount Value="103"/>
    232217        <Loaded Value="True"/>
    233       </Unit19>
    234       <Unit20>
     218      </Unit17>
     219      <Unit18>
    235220        <Filename Value="Compiler\Analyze\UParser.pas"/>
    236221        <UnitName Value="UParser"/>
    237         <EditorIndex Value="3"/>
    238         <WindowIndex Value="0"/>
    239         <TopLine Value="53"/>
    240         <CursorPos X="15" Y="66"/>
     222        <EditorIndex Value="2"/>
     223        <WindowIndex Value="0"/>
     224        <TopLine Value="362"/>
     225        <CursorPos X="1" Y="381"/>
    241226        <UsageCount Value="102"/>
    242227        <Loaded Value="True"/>
    243       </Unit20>
    244       <Unit21>
     228      </Unit18>
     229      <Unit19>
    245230        <Filename Value="Forms\UProjectManager.pas"/>
    246231        <IsPartOfProject Value="True"/>
     
    253238        <UsageCount Value="207"/>
    254239        <DefaultSyntaxHighlighter Value="Delphi"/>
    255       </Unit21>
    256       <Unit22>
     240      </Unit19>
     241      <Unit20>
    257242        <Filename Value="Forms\UCodeForm.pas"/>
    258243        <IsPartOfProject Value="True"/>
     
    265250        <UsageCount Value="207"/>
    266251        <DefaultSyntaxHighlighter Value="Delphi"/>
    267       </Unit22>
    268       <Unit23>
     252      </Unit20>
     253      <Unit21>
    269254        <Filename Value="Forms\UMessagesForm.pas"/>
    270255        <IsPartOfProject Value="True"/>
     
    277262        <UsageCount Value="207"/>
    278263        <DefaultSyntaxHighlighter Value="Delphi"/>
    279       </Unit23>
    280       <Unit24>
     264      </Unit21>
     265      <Unit22>
    281266        <Filename Value="Forms\UCompiledForm.pas"/>
    282267        <IsPartOfProject Value="True"/>
     
    290275        <UsageCount Value="206"/>
    291276        <DefaultSyntaxHighlighter Value="Delphi"/>
    292       </Unit24>
    293       <Unit25>
     277      </Unit22>
     278      <Unit23>
    294279        <Filename Value="Forms\UCodeTreeForm.pas"/>
    295280        <IsPartOfProject Value="True"/>
     
    302287        <UsageCount Value="206"/>
    303288        <DefaultSyntaxHighlighter Value="Delphi"/>
     289      </Unit23>
     290      <Unit24>
     291        <Filename Value="Compiler\Produce\UProducerTreeView.pas"/>
     292        <UnitName Value="UProducerTreeView"/>
     293        <WindowIndex Value="0"/>
     294        <TopLine Value="141"/>
     295        <CursorPos X="81" Y="154"/>
     296        <UsageCount Value="14"/>
     297      </Unit24>
     298      <Unit25>
     299        <Filename Value="E:\Programy\Lazarus\components\synedit\synhighlightermulti.pas"/>
     300        <UnitName Value="SynHighlighterMulti"/>
     301        <WindowIndex Value="0"/>
     302        <TopLine Value="316"/>
     303        <CursorPos X="14" Y="329"/>
     304        <UsageCount Value="13"/>
    304305      </Unit25>
    305306      <Unit26>
    306         <Filename Value="Compiler\Produce\UProducerTreeView.pas"/>
    307         <UnitName Value="UProducerTreeView"/>
    308         <WindowIndex Value="0"/>
    309         <TopLine Value="141"/>
    310         <CursorPos X="81" Y="154"/>
    311         <UsageCount Value="18"/>
     307        <Filename Value="E:\Programy\Lazarus\lcl\include\customform.inc"/>
     308        <WindowIndex Value="0"/>
     309        <TopLine Value="1762"/>
     310        <CursorPos X="1" Y="1769"/>
     311        <UsageCount Value="13"/>
    312312      </Unit26>
    313313      <Unit27>
    314         <Filename Value="E:\Programy\Lazarus\components\synedit\synhighlightermulti.pas"/>
    315         <UnitName Value="SynHighlighterMulti"/>
    316         <WindowIndex Value="0"/>
    317         <TopLine Value="316"/>
    318         <CursorPos X="14" Y="329"/>
    319         <UsageCount Value="17"/>
     314        <Filename Value="Common\URegistry.pas"/>
     315        <IsPartOfProject Value="True"/>
     316        <UnitName Value="URegistry"/>
     317        <WindowIndex Value="0"/>
     318        <TopLine Value="1"/>
     319        <CursorPos X="23" Y="22"/>
     320        <UsageCount Value="200"/>
     321        <DefaultSyntaxHighlighter Value="Delphi"/>
    320322      </Unit27>
    321323      <Unit28>
    322         <Filename Value="E:\Programy\Lazarus\lcl\include\customform.inc"/>
    323         <WindowIndex Value="0"/>
    324         <TopLine Value="1762"/>
    325         <CursorPos X="1" Y="1769"/>
    326         <UsageCount Value="17"/>
     324        <Filename Value="Common\ULastOpenedList.pas"/>
     325        <IsPartOfProject Value="True"/>
     326        <UnitName Value="ULastOpenedList"/>
     327        <WindowIndex Value="0"/>
     328        <TopLine Value="1"/>
     329        <CursorPos X="48" Y="11"/>
     330        <UsageCount Value="200"/>
     331        <DefaultSyntaxHighlighter Value="Delphi"/>
    327332      </Unit28>
    328333      <Unit29>
    329         <Filename Value="Common\URegistry.pas"/>
    330         <IsPartOfProject Value="True"/>
    331         <UnitName Value="URegistry"/>
    332         <WindowIndex Value="0"/>
    333         <TopLine Value="1"/>
    334         <CursorPos X="23" Y="22"/>
    335         <UsageCount Value="200"/>
    336         <DefaultSyntaxHighlighter Value="Delphi"/>
    337       </Unit29>
    338       <Unit30>
    339         <Filename Value="Common\ULastOpenedList.pas"/>
    340         <IsPartOfProject Value="True"/>
    341         <UnitName Value="ULastOpenedList"/>
    342         <WindowIndex Value="0"/>
    343         <TopLine Value="1"/>
    344         <CursorPos X="48" Y="11"/>
    345         <UsageCount Value="200"/>
    346         <DefaultSyntaxHighlighter Value="Delphi"/>
    347       </Unit30>
    348       <Unit31>
    349334        <Filename Value="UApplicationInfo.pas"/>
    350335        <IsPartOfProject Value="True"/>
     
    355340        <UsageCount Value="200"/>
    356341        <DefaultSyntaxHighlighter Value="Delphi"/>
     342      </Unit29>
     343      <Unit30>
     344        <Filename Value="Compiler\Produce\UProducerDynamicC.pas"/>
     345        <UnitName Value="UProducerDynamicC"/>
     346        <WindowIndex Value="0"/>
     347        <TopLine Value="263"/>
     348        <CursorPos X="36" Y="273"/>
     349        <UsageCount Value="113"/>
     350      </Unit30>
     351      <Unit31>
     352        <Filename Value="Compiler\Produce\UProducerAsm8051.pas"/>
     353        <UnitName Value="UProducerAsm8051"/>
     354        <WindowIndex Value="0"/>
     355        <TopLine Value="1"/>
     356        <CursorPos X="56" Y="157"/>
     357        <UsageCount Value="10"/>
    357358      </Unit31>
    358359      <Unit32>
    359         <Filename Value="Compiler\Produce\UProducerDynamicC.pas"/>
    360         <UnitName Value="UProducerDynamicC"/>
    361         <WindowIndex Value="0"/>
    362         <TopLine Value="270"/>
    363         <CursorPos X="50" Y="283"/>
    364         <UsageCount Value="99"/>
     360        <Filename Value="Compiler\Produce\UProducerPascal.pas"/>
     361        <UnitName Value="UProducerPascal"/>
     362        <WindowIndex Value="0"/>
     363        <TopLine Value="301"/>
     364        <CursorPos X="50" Y="314"/>
     365        <UsageCount Value="42"/>
    365366      </Unit32>
    366367      <Unit33>
    367         <Filename Value="Compiler\Produce\UProducerAsm8051.pas"/>
    368         <UnitName Value="UProducerAsm8051"/>
    369         <WindowIndex Value="0"/>
    370         <TopLine Value="1"/>
    371         <CursorPos X="56" Y="157"/>
    372         <UsageCount Value="14"/>
     368        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
     369        <UnitName Value="UPascalParser"/>
     370        <IsVisibleTab Value="True"/>
     371        <EditorIndex Value="4"/>
     372        <WindowIndex Value="0"/>
     373        <TopLine Value="286"/>
     374        <CursorPos X="20" Y="307"/>
     375        <UsageCount Value="110"/>
     376        <Loaded Value="True"/>
    373377      </Unit33>
    374378      <Unit34>
    375         <Filename Value="Compiler\Produce\UProducerPascal.pas"/>
    376         <UnitName Value="UProducerPascal"/>
    377         <WindowIndex Value="0"/>
    378         <TopLine Value="301"/>
    379         <CursorPos X="50" Y="314"/>
    380         <UsageCount Value="46"/>
     379        <Filename Value="Compiler\Analyze\UGrammer.pas"/>
     380        <UnitName Value="UGrammer"/>
     381        <WindowIndex Value="0"/>
     382        <TopLine Value="15"/>
     383        <CursorPos X="1" Y="28"/>
     384        <UsageCount Value="40"/>
    381385      </Unit34>
    382386      <Unit35>
    383         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    384         <UnitName Value="UPascalParser"/>
    385         <EditorIndex Value="5"/>
    386         <WindowIndex Value="0"/>
    387         <TopLine Value="878"/>
    388         <CursorPos X="3" Y="891"/>
    389         <UsageCount Value="110"/>
    390         <Loaded Value="True"/>
     387        <Filename Value="E:\Programy\Lazarus\components\synedit\synedit.pp"/>
     388        <UnitName Value="SynEdit"/>
     389        <WindowIndex Value="0"/>
     390        <TopLine Value="828"/>
     391        <CursorPos X="27" Y="841"/>
     392        <UsageCount Value="16"/>
    391393      </Unit35>
    392394      <Unit36>
    393         <Filename Value="Compiler\Analyze\UGrammer.pas"/>
    394         <UnitName Value="UGrammer"/>
    395         <WindowIndex Value="0"/>
    396         <TopLine Value="15"/>
    397         <CursorPos X="1" Y="28"/>
    398         <UsageCount Value="44"/>
     395        <Filename Value="Compiler\Analyze\x.sss"/>
     396        <WindowIndex Value="0"/>
     397        <TopLine Value="1"/>
     398        <CursorPos X="17" Y="5"/>
     399        <UsageCount Value="5"/>
     400        <DefaultSyntaxHighlighter Value="None"/>
    399401      </Unit36>
    400402      <Unit37>
    401         <Filename Value="E:\Programy\Lazarus\components\synedit\synedit.pp"/>
    402         <UnitName Value="SynEdit"/>
    403         <WindowIndex Value="0"/>
    404         <TopLine Value="828"/>
    405         <CursorPos X="27" Y="841"/>
    406         <UsageCount Value="20"/>
     403        <Filename Value="Compiler\Analyze\System.pas"/>
     404        <UnitName Value="System"/>
     405        <WindowIndex Value="0"/>
     406        <TopLine Value="1"/>
     407        <CursorPos X="8" Y="8"/>
     408        <UsageCount Value="5"/>
    407409      </Unit37>
    408410      <Unit38>
    409         <Filename Value="E:\Programy\Lazarus\components\synedit\synedittypes.pp"/>
    410         <UnitName Value="SynEditTypes"/>
    411         <WindowIndex Value="0"/>
    412         <TopLine Value="56"/>
    413         <CursorPos X="3" Y="69"/>
    414         <UsageCount Value="4"/>
     411        <Filename Value="Common\UDebugLog.pas"/>
     412        <IsPartOfProject Value="True"/>
     413        <UnitName Value="UDebugLog"/>
     414        <WindowIndex Value="0"/>
     415        <TopLine Value="1"/>
     416        <CursorPos X="28" Y="22"/>
     417        <UsageCount Value="188"/>
     418        <DefaultSyntaxHighlighter Value="Delphi"/>
    415419      </Unit38>
    416420      <Unit39>
    417         <Filename Value="E:\Programy\Lazarus\components\synedit\syneditmarkup.pp"/>
    418         <UnitName Value="SynEditMarkup"/>
    419         <WindowIndex Value="0"/>
    420         <TopLine Value="113"/>
    421         <CursorPos X="3" Y="120"/>
    422         <UsageCount Value="4"/>
     421        <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\objpas\classes\streams.inc"/>
     422        <WindowIndex Value="0"/>
     423        <TopLine Value="365"/>
     424        <CursorPos X="5" Y="370"/>
     425        <UsageCount Value="20"/>
    423426      </Unit39>
    424427      <Unit40>
    425         <Filename Value="E:\Programy\Lazarus\components\synedit\synedit.inc"/>
    426         <WindowIndex Value="0"/>
    427         <TopLine Value="1"/>
    428         <CursorPos X="24" Y="11"/>
    429         <UsageCount Value="4"/>
     428        <Filename Value="Compiler\Produce\UProducerGCCC.pas"/>
     429        <UnitName Value="UProducerGCCC"/>
     430        <WindowIndex Value="0"/>
     431        <TopLine Value="270"/>
     432        <CursorPos X="30" Y="278"/>
     433        <UsageCount Value="40"/>
    430434      </Unit40>
    431435      <Unit41>
    432         <Filename Value="Compiler\Analyze\x.sss"/>
    433         <WindowIndex Value="0"/>
    434         <TopLine Value="1"/>
    435         <CursorPos X="17" Y="5"/>
    436         <UsageCount Value="9"/>
    437         <DefaultSyntaxHighlighter Value="None"/>
     436        <Filename Value="Forms\UMainForm.lfm"/>
     437        <WindowIndex Value="0"/>
     438        <TopLine Value="1"/>
     439        <CursorPos X="1" Y="1"/>
     440        <UsageCount Value="66"/>
     441        <Loaded Value="True"/>
     442        <DefaultSyntaxHighlighter Value="LFM"/>
    438443      </Unit41>
    439444      <Unit42>
    440         <Filename Value="Compiler\Analyze\System.pas"/>
    441         <UnitName Value="System"/>
    442         <WindowIndex Value="0"/>
    443         <TopLine Value="1"/>
    444         <CursorPos X="8" Y="8"/>
    445         <UsageCount Value="9"/>
     445        <Filename Value="E:\usr\share\fpcsrc\packages\fcl-registry\src\registry.pp"/>
     446        <UnitName Value="registry"/>
     447        <WindowIndex Value="0"/>
     448        <TopLine Value="1"/>
     449        <CursorPos X="36" Y="55"/>
     450        <UsageCount Value="33"/>
     451        <DefaultSyntaxHighlighter Value="Delphi"/>
    446452      </Unit42>
    447453      <Unit43>
    448         <Filename Value="Common\UDebugLog.pas"/>
    449         <IsPartOfProject Value="True"/>
    450         <UnitName Value="UDebugLog"/>
    451         <WindowIndex Value="0"/>
    452         <TopLine Value="1"/>
    453         <CursorPos X="28" Y="22"/>
    454         <UsageCount Value="149"/>
     454        <Filename Value="E:\usr\share\fpcsrc\packages\fcl-registry\src\regdef.inc"/>
     455        <WindowIndex Value="0"/>
     456        <TopLine Value="1"/>
     457        <CursorPos X="3" Y="21"/>
     458        <UsageCount Value="33"/>
    455459        <DefaultSyntaxHighlighter Value="Delphi"/>
    456460      </Unit43>
    457461      <Unit44>
    458         <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\objpas\classes\streams.inc"/>
    459         <WindowIndex Value="0"/>
    460         <TopLine Value="365"/>
    461         <CursorPos X="5" Y="370"/>
    462         <UsageCount Value="24"/>
     462        <Filename Value="E:\lazarus\trunk\lcl\interfaces\gtk2\gtk2widgetset.inc"/>
     463        <WindowIndex Value="0"/>
     464        <TopLine Value="1377"/>
     465        <CursorPos X="32" Y="1396"/>
     466        <UsageCount Value="33"/>
     467        <DefaultSyntaxHighlighter Value="Delphi"/>
    463468      </Unit44>
    464469      <Unit45>
    465         <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\win32\system.pp"/>
    466         <UnitName Value="System"/>
    467         <WindowIndex Value="0"/>
    468         <TopLine Value="3"/>
    469         <CursorPos X="6" Y="16"/>
    470         <UsageCount Value="3"/>
     470        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\List\GenericListInterface.tpl"/>
     471        <WindowIndex Value="0"/>
     472        <TopLine Value="22"/>
     473        <CursorPos X="7" Y="47"/>
     474        <UsageCount Value="5"/>
     475        <DefaultSyntaxHighlighter Value="None"/>
    471476      </Unit45>
    472477      <Unit46>
    473         <Filename Value="Compiler\Produce\UProducerGCCC.pas"/>
    474         <UnitName Value="UProducerGCCC"/>
    475         <WindowIndex Value="0"/>
    476         <TopLine Value="270"/>
    477         <CursorPos X="30" Y="278"/>
    478         <UsageCount Value="44"/>
     478        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\List\GenericListImplementation.tpl"/>
     479        <WindowIndex Value="0"/>
     480        <TopLine Value="171"/>
     481        <CursorPos X="7" Y="200"/>
     482        <UsageCount Value="5"/>
     483        <DefaultSyntaxHighlighter Value="None"/>
    479484      </Unit46>
    480485      <Unit47>
    481         <Filename Value="E:\Programy\Lazarus\fpc\2.4.3\source\packages\fcl-base\src\contnrs.pp"/>
    482         <UnitName Value="contnrs"/>
    483         <WindowIndex Value="0"/>
    484         <TopLine Value="66"/>
    485         <CursorPos X="14" Y="91"/>
    486         <UsageCount Value="4"/>
     486        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\ListObject.pas"/>
     487        <UnitName Value="ListObject"/>
     488        <WindowIndex Value="0"/>
     489        <TopLine Value="38"/>
     490        <CursorPos X="1" Y="74"/>
     491        <UsageCount Value="7"/>
     492        <DefaultSyntaxHighlighter Value="Delphi"/>
    487493      </Unit47>
    488494      <Unit48>
    489         <Filename Value="Forms\UMainForm.lfm"/>
    490         <WindowIndex Value="0"/>
    491         <TopLine Value="1"/>
    492         <CursorPos X="1" Y="1"/>
    493         <UsageCount Value="47"/>
    494         <Loaded Value="True"/>
    495         <DefaultSyntaxHighlighter Value="LFM"/>
     495        <Filename Value="E:\lazarus\trunk\lcl\include\listitem.inc"/>
     496        <WindowIndex Value="0"/>
     497        <TopLine Value="525"/>
     498        <CursorPos X="24" Y="548"/>
     499        <UsageCount Value="5"/>
     500        <DefaultSyntaxHighlighter Value="Delphi"/>
    496501      </Unit48>
    497502      <Unit49>
    498         <Filename Value="E:\usr\share\fpcsrc\packages\fcl-registry\src\registry.pp"/>
    499         <UnitName Value="registry"/>
    500         <WindowIndex Value="0"/>
    501         <TopLine Value="1"/>
    502         <CursorPos X="36" Y="55"/>
    503         <UsageCount Value="37"/>
     503        <Filename Value="E:\PascalClassLibrary\Docking\CoolDocking\UCoolDocking.pas"/>
     504        <UnitName Value="UCoolDocking"/>
     505        <WindowIndex Value="0"/>
     506        <TopLine Value="814"/>
     507        <CursorPos X="19" Y="828"/>
     508        <UsageCount Value="6"/>
    504509        <DefaultSyntaxHighlighter Value="Delphi"/>
    505510      </Unit49>
    506511      <Unit50>
    507         <Filename Value="E:\usr\share\fpcsrc\packages\fcl-registry\src\regdef.inc"/>
    508         <WindowIndex Value="0"/>
    509         <TopLine Value="1"/>
    510         <CursorPos X="3" Y="21"/>
    511         <UsageCount Value="37"/>
     512        <Filename Value="E:\usr\share\fpcsrc\2.4.0\rtl\unix\sysunixh.inc"/>
     513        <WindowIndex Value="0"/>
     514        <TopLine Value="15"/>
     515        <CursorPos X="2" Y="28"/>
     516        <UsageCount Value="5"/>
    512517        <DefaultSyntaxHighlighter Value="Delphi"/>
    513518      </Unit50>
    514519      <Unit51>
    515         <Filename Value="E:\lazarus\trunk\lcl\interfaces\gtk2\gtk2widgetset.inc"/>
    516         <WindowIndex Value="0"/>
    517         <TopLine Value="1377"/>
    518         <CursorPos X="32" Y="1396"/>
    519         <UsageCount Value="37"/>
     520        <Filename Value="E:\usr\share\fpcsrc\2.4.0\packages\fcl-registry\src\registry.pp"/>
     521        <UnitName Value="registry"/>
     522        <WindowIndex Value="0"/>
     523        <TopLine Value="194"/>
     524        <CursorPos X="12" Y="206"/>
     525        <UsageCount Value="5"/>
    520526        <DefaultSyntaxHighlighter Value="Delphi"/>
    521527      </Unit51>
    522528      <Unit52>
    523         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\List\GenericListInterface.tpl"/>
    524         <WindowIndex Value="0"/>
    525         <TopLine Value="22"/>
    526         <CursorPos X="7" Y="47"/>
    527         <UsageCount Value="9"/>
    528         <DefaultSyntaxHighlighter Value="None"/>
     529        <Filename Value="E:\usr\share\fpcsrc\2.4.0\packages\fcl-registry\src\xregreg.inc"/>
     530        <WindowIndex Value="0"/>
     531        <TopLine Value="1"/>
     532        <CursorPos X="45" Y="15"/>
     533        <UsageCount Value="5"/>
     534        <DefaultSyntaxHighlighter Value="Delphi"/>
    529535      </Unit52>
    530536      <Unit53>
    531         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\List\GenericListImplementation.tpl"/>
    532         <WindowIndex Value="0"/>
    533         <TopLine Value="171"/>
    534         <CursorPos X="7" Y="200"/>
    535         <UsageCount Value="9"/>
    536         <DefaultSyntaxHighlighter Value="None"/>
     537        <Filename Value="E:\usr\share\fpcsrc\2.4.0\rtl\objpas\sysutils\osutilsh.inc"/>
     538        <WindowIndex Value="0"/>
     539        <TopLine Value="22"/>
     540        <CursorPos X="10" Y="37"/>
     541        <UsageCount Value="5"/>
     542        <DefaultSyntaxHighlighter Value="Delphi"/>
    537543      </Unit53>
    538544      <Unit54>
    539         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\ListObject.pas"/>
    540         <UnitName Value="ListObject"/>
    541         <WindowIndex Value="0"/>
    542         <TopLine Value="38"/>
    543         <CursorPos X="1" Y="74"/>
    544         <UsageCount Value="11"/>
     545        <Filename Value="E:\usr\share\fpcsrc\2.4.0\rtl\unix\sysutils.pp"/>
     546        <UnitName Value="sysutils"/>
     547        <WindowIndex Value="0"/>
     548        <TopLine Value="1294"/>
     549        <CursorPos X="47" Y="1321"/>
     550        <UsageCount Value="5"/>
    545551        <DefaultSyntaxHighlighter Value="Delphi"/>
    546552      </Unit54>
    547553      <Unit55>
    548         <Filename Value="E:\lazarus\trunk\lcl\include\listitem.inc"/>
    549         <WindowIndex Value="0"/>
    550         <TopLine Value="525"/>
    551         <CursorPos X="24" Y="548"/>
    552         <UsageCount Value="9"/>
    553         <DefaultSyntaxHighlighter Value="Delphi"/>
     554        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\ObjectListInterface.tpl"/>
     555        <TopLine Value="1"/>
     556        <CursorPos X="1" Y="13"/>
     557        <UsageCount Value="5"/>
     558        <DefaultSyntaxHighlighter Value="None"/>
    554559      </Unit55>
    555560      <Unit56>
    556         <Filename Value="E:\PascalClassLibrary\Docking\CoolDocking\UCoolDocking.pas"/>
    557         <UnitName Value="UCoolDocking"/>
    558         <WindowIndex Value="0"/>
    559         <TopLine Value="814"/>
    560         <CursorPos X="19" Y="828"/>
    561         <UsageCount Value="10"/>
    562         <DefaultSyntaxHighlighter Value="Delphi"/>
     561        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\ObjectListImplementation.tpl"/>
     562        <WindowIndex Value="0"/>
     563        <TopLine Value="1"/>
     564        <CursorPos X="7" Y="17"/>
     565        <UsageCount Value="5"/>
     566        <DefaultSyntaxHighlighter Value="None"/>
    563567      </Unit56>
    564568      <Unit57>
    565         <Filename Value="E:\usr\share\fpcsrc\2.4.0\rtl\unix\sysunixh.inc"/>
    566         <WindowIndex Value="0"/>
    567         <TopLine Value="15"/>
    568         <CursorPos X="2" Y="28"/>
    569         <UsageCount Value="9"/>
     569        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericObjectList.inc"/>
     570        <WindowIndex Value="0"/>
     571        <TopLine Value="1"/>
     572        <CursorPos X="40" Y="13"/>
     573        <UsageCount Value="15"/>
    570574        <DefaultSyntaxHighlighter Value="Delphi"/>
    571575      </Unit57>
    572576      <Unit58>
    573         <Filename Value="E:\usr\share\fpcsrc\2.4.0\packages\fcl-registry\src\registry.pp"/>
    574         <UnitName Value="registry"/>
    575         <WindowIndex Value="0"/>
    576         <TopLine Value="194"/>
    577         <CursorPos X="12" Y="206"/>
    578         <UsageCount Value="9"/>
    579         <DefaultSyntaxHighlighter Value="Delphi"/>
     577        <Filename Value="Generics\Generic\GenericObjectList.inc"/>
     578        <WindowIndex Value="0"/>
     579        <TopLine Value="27"/>
     580        <CursorPos X="84" Y="48"/>
     581        <UsageCount Value="27"/>
    580582      </Unit58>
    581583      <Unit59>
    582         <Filename Value="E:\usr\share\fpcsrc\2.4.0\packages\fcl-registry\src\xregreg.inc"/>
    583         <WindowIndex Value="0"/>
    584         <TopLine Value="1"/>
    585         <CursorPos X="45" Y="15"/>
    586         <UsageCount Value="9"/>
    587         <DefaultSyntaxHighlighter Value="Delphi"/>
     584        <Filename Value="Generics\Generic\GenericList.inc"/>
     585        <WindowIndex Value="0"/>
     586        <TopLine Value="100"/>
     587        <CursorPos X="43" Y="102"/>
     588        <UsageCount Value="27"/>
    588589      </Unit59>
    589590      <Unit60>
    590         <Filename Value="E:\usr\share\fpcsrc\2.4.0\rtl\objpas\sysutils\osutilsh.inc"/>
    591         <WindowIndex Value="0"/>
    592         <TopLine Value="22"/>
    593         <CursorPos X="10" Y="37"/>
    594         <UsageCount Value="9"/>
     591        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     592        <WindowIndex Value="0"/>
     593        <TopLine Value="24"/>
     594        <CursorPos X="14" Y="43"/>
     595        <UsageCount Value="6"/>
    595596        <DefaultSyntaxHighlighter Value="Delphi"/>
    596597      </Unit60>
    597598      <Unit61>
    598         <Filename Value="E:\usr\share\fpcsrc\2.4.0\rtl\unix\sysutils.pp"/>
    599         <UnitName Value="sysutils"/>
    600         <WindowIndex Value="0"/>
    601         <TopLine Value="1294"/>
    602         <CursorPos X="47" Y="1321"/>
    603         <UsageCount Value="9"/>
     599        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericDictionary.inc"/>
     600        <WindowIndex Value="0"/>
     601        <TopLine Value="69"/>
     602        <CursorPos X="4" Y="41"/>
     603        <UsageCount Value="6"/>
    604604        <DefaultSyntaxHighlighter Value="Delphi"/>
    605605      </Unit61>
    606606      <Unit62>
    607         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\ObjectListInterface.tpl"/>
    608         <TopLine Value="1"/>
    609         <CursorPos X="1" Y="13"/>
    610         <UsageCount Value="9"/>
    611         <DefaultSyntaxHighlighter Value="None"/>
     607        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericQueue.inc"/>
     608        <WindowIndex Value="0"/>
     609        <TopLine Value="1"/>
     610        <CursorPos X="8" Y="30"/>
     611        <UsageCount Value="6"/>
     612        <DefaultSyntaxHighlighter Value="Delphi"/>
    612613      </Unit62>
    613614      <Unit63>
    614         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\ObjectListImplementation.tpl"/>
    615         <WindowIndex Value="0"/>
    616         <TopLine Value="1"/>
    617         <CursorPos X="7" Y="17"/>
    618         <UsageCount Value="9"/>
    619         <DefaultSyntaxHighlighter Value="None"/>
     615        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericSet.inc"/>
     616        <WindowIndex Value="0"/>
     617        <TopLine Value="12"/>
     618        <CursorPos X="8" Y="28"/>
     619        <UsageCount Value="6"/>
     620        <DefaultSyntaxHighlighter Value="Delphi"/>
    620621      </Unit63>
    621622      <Unit64>
    622         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericObjectList.inc"/>
    623         <WindowIndex Value="0"/>
    624         <TopLine Value="1"/>
    625         <CursorPos X="40" Y="13"/>
    626         <UsageCount Value="19"/>
     623        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericStack.inc"/>
     624        <WindowIndex Value="0"/>
     625        <TopLine Value="31"/>
     626        <CursorPos X="4" Y="42"/>
     627        <UsageCount Value="6"/>
    627628        <DefaultSyntaxHighlighter Value="Delphi"/>
    628629      </Unit64>
    629630      <Unit65>
    630         <Filename Value="Generics\Generic\GenericObjectList.inc"/>
     631        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericTree.inc"/>
    631632        <WindowIndex Value="0"/>
    632633        <TopLine Value="27"/>
    633         <CursorPos X="84" Y="48"/>
    634         <UsageCount Value="31"/>
     634        <CursorPos X="4" Y="47"/>
     635        <UsageCount Value="6"/>
     636        <DefaultSyntaxHighlighter Value="Delphi"/>
    635637      </Unit65>
    636638      <Unit66>
    637         <Filename Value="Generics\Generic\GenericList.inc"/>
    638         <WindowIndex Value="0"/>
    639         <TopLine Value="100"/>
    640         <CursorPos X="43" Y="102"/>
    641         <UsageCount Value="31"/>
     639        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedList.pas"/>
     640        <UnitName Value="SpecializedList"/>
     641        <WindowIndex Value="0"/>
     642        <TopLine Value="166"/>
     643        <CursorPos X="6" Y="203"/>
     644        <UsageCount Value="6"/>
     645        <DefaultSyntaxHighlighter Value="Delphi"/>
    642646      </Unit66>
    643647      <Unit67>
    644         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
    645         <WindowIndex Value="0"/>
    646         <TopLine Value="24"/>
    647         <CursorPos X="14" Y="43"/>
    648         <UsageCount Value="10"/>
     648        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedDictionary.pas"/>
     649        <UnitName Value="SpecializedDictionary"/>
     650        <WindowIndex Value="0"/>
     651        <TopLine Value="2"/>
     652        <CursorPos X="6" Y="39"/>
     653        <UsageCount Value="6"/>
    649654        <DefaultSyntaxHighlighter Value="Delphi"/>
    650655      </Unit67>
    651656      <Unit68>
    652         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericDictionary.inc"/>
    653         <WindowIndex Value="0"/>
    654         <TopLine Value="69"/>
    655         <CursorPos X="4" Y="41"/>
    656         <UsageCount Value="10"/>
     657        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedStack.pas"/>
     658        <UnitName Value="SpecializedStack"/>
     659        <WindowIndex Value="0"/>
     660        <TopLine Value="21"/>
     661        <CursorPos X="6" Y="57"/>
     662        <UsageCount Value="6"/>
    657663        <DefaultSyntaxHighlighter Value="Delphi"/>
    658664      </Unit68>
    659665      <Unit69>
    660         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericQueue.inc"/>
    661         <WindowIndex Value="0"/>
    662         <TopLine Value="1"/>
    663         <CursorPos X="8" Y="30"/>
    664         <UsageCount Value="10"/>
     666        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedTree.pas"/>
     667        <UnitName Value="SpecializedTree"/>
     668        <WindowIndex Value="0"/>
     669        <TopLine Value="46"/>
     670        <CursorPos X="6" Y="83"/>
     671        <UsageCount Value="6"/>
    665672        <DefaultSyntaxHighlighter Value="Delphi"/>
    666673      </Unit69>
    667674      <Unit70>
    668         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericSet.inc"/>
    669         <WindowIndex Value="0"/>
    670         <TopLine Value="12"/>
    671         <CursorPos X="8" Y="28"/>
    672         <UsageCount Value="10"/>
     675        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedQueue.pas"/>
     676        <UnitName Value="SpecializedQueue"/>
     677        <WindowIndex Value="0"/>
     678        <TopLine Value="41"/>
     679        <CursorPos X="6" Y="78"/>
     680        <UsageCount Value="6"/>
    673681        <DefaultSyntaxHighlighter Value="Delphi"/>
    674682      </Unit70>
    675683      <Unit71>
    676         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericStack.inc"/>
    677         <WindowIndex Value="0"/>
    678         <TopLine Value="31"/>
    679         <CursorPos X="4" Y="42"/>
    680         <UsageCount Value="10"/>
     684        <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedSet.pas"/>
     685        <UnitName Value="SpecializedSet"/>
     686        <WindowIndex Value="0"/>
     687        <TopLine Value="21"/>
     688        <CursorPos X="23" Y="32"/>
     689        <UsageCount Value="6"/>
    681690        <DefaultSyntaxHighlighter Value="Delphi"/>
    682691      </Unit71>
    683692      <Unit72>
    684         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericTree.inc"/>
    685         <WindowIndex Value="0"/>
    686         <TopLine Value="27"/>
    687         <CursorPos X="4" Y="47"/>
    688         <UsageCount Value="10"/>
    689         <DefaultSyntaxHighlighter Value="Delphi"/>
     693        <Filename Value="E:\Projekty\PascalClassLibrary\Docking\CoolDocking\UCoolDockStyleTabs.pas"/>
     694        <UnitName Value="UCoolDockStyleTabs"/>
     695        <WindowIndex Value="0"/>
     696        <TopLine Value="1"/>
     697        <CursorPos X="44" Y="6"/>
     698        <UsageCount Value="31"/>
    690699      </Unit72>
    691700      <Unit73>
    692         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedList.pas"/>
    693         <UnitName Value="SpecializedList"/>
    694         <WindowIndex Value="0"/>
    695         <TopLine Value="166"/>
    696         <CursorPos X="6" Y="203"/>
    697         <UsageCount Value="10"/>
    698         <DefaultSyntaxHighlighter Value="Delphi"/>
     701        <Filename Value="E:\Programy\Lazarus\fpc\2.4.3\source\rtl\win32\system.pp"/>
     702        <UnitName Value="System"/>
     703        <WindowIndex Value="0"/>
     704        <TopLine Value="22"/>
     705        <CursorPos X="2" Y="35"/>
     706        <UsageCount Value="31"/>
    699707      </Unit73>
    700708      <Unit74>
    701         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedDictionary.pas"/>
    702         <UnitName Value="SpecializedDictionary"/>
    703         <WindowIndex Value="0"/>
    704         <TopLine Value="2"/>
    705         <CursorPos X="6" Y="39"/>
     709        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedList.pas"/>
     710        <UnitName Value="SpecializedList"/>
     711        <EditorIndex Value="6"/>
     712        <WindowIndex Value="0"/>
     713        <TopLine Value="5"/>
     714        <CursorPos X="54" Y="17"/>
    706715        <UsageCount Value="10"/>
    707         <DefaultSyntaxHighlighter Value="Delphi"/>
     716        <Loaded Value="True"/>
    708717      </Unit74>
    709718      <Unit75>
    710         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedStack.pas"/>
    711         <UnitName Value="SpecializedStack"/>
    712         <WindowIndex Value="0"/>
    713         <TopLine Value="21"/>
    714         <CursorPos X="6" Y="57"/>
     719        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     720        <EditorIndex Value="7"/>
     721        <WindowIndex Value="0"/>
     722        <TopLine Value="232"/>
     723        <CursorPos X="10" Y="246"/>
    715724        <UsageCount Value="10"/>
    716         <DefaultSyntaxHighlighter Value="Delphi"/>
     725        <Loaded Value="True"/>
    717726      </Unit75>
    718727      <Unit76>
    719         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedTree.pas"/>
    720         <UnitName Value="SpecializedTree"/>
    721         <WindowIndex Value="0"/>
    722         <TopLine Value="46"/>
    723         <CursorPos X="6" Y="83"/>
     728        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericObjectList.inc"/>
     729        <EditorIndex Value="5"/>
     730        <WindowIndex Value="0"/>
     731        <TopLine Value="1"/>
     732        <CursorPos X="24" Y="4"/>
    724733        <UsageCount Value="10"/>
    725         <DefaultSyntaxHighlighter Value="Delphi"/>
     734        <Loaded Value="True"/>
    726735      </Unit76>
    727       <Unit77>
    728         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedQueue.pas"/>
    729         <UnitName Value="SpecializedQueue"/>
    730         <WindowIndex Value="0"/>
    731         <TopLine Value="41"/>
    732         <CursorPos X="6" Y="78"/>
    733         <UsageCount Value="10"/>
    734         <DefaultSyntaxHighlighter Value="Delphi"/>
    735       </Unit77>
    736       <Unit78>
    737         <Filename Value="E:\PascalClassLibrary\Generics\TemplateGenerics\Specialized\SpecializedSet.pas"/>
    738         <UnitName Value="SpecializedSet"/>
    739         <WindowIndex Value="0"/>
    740         <TopLine Value="21"/>
    741         <CursorPos X="23" Y="32"/>
    742         <UsageCount Value="10"/>
    743         <DefaultSyntaxHighlighter Value="Delphi"/>
    744       </Unit78>
    745       <Unit79>
    746         <Filename Value="E:\Projekty\PascalClassLibrary\Docking\CoolDocking\UCoolDockStyleTabs.pas"/>
    747         <UnitName Value="UCoolDockStyleTabs"/>
    748         <EditorIndex Value="1"/>
    749         <WindowIndex Value="0"/>
    750         <TopLine Value="1"/>
    751         <CursorPos X="44" Y="6"/>
    752         <UsageCount Value="12"/>
    753         <Loaded Value="True"/>
    754       </Unit79>
    755       <Unit80>
    756         <Filename Value="E:\Programy\Lazarus\fpc\2.4.3\source\rtl\win32\system.pp"/>
    757         <UnitName Value="System"/>
    758         <EditorIndex Value="6"/>
    759         <WindowIndex Value="0"/>
    760         <TopLine Value="22"/>
    761         <CursorPos X="2" Y="35"/>
    762         <UsageCount Value="12"/>
    763         <Loaded Value="True"/>
    764       </Unit80>
    765736    </Units>
    766     <JumpHistory Count="30" HistoryIndex="29">
     737    <JumpHistory Count="25" HistoryIndex="24">
    767738      <Position1>
    768739        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    769         <Caret Line="329" Column="19" TopLine="136"/>
     740        <Caret Line="261" Column="20" TopLine="247"/>
    770741      </Position1>
    771742      <Position2>
    772743        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    773         <Caret Line="20" Column="51" TopLine="7"/>
     744        <Caret Line="269" Column="18" TopLine="247"/>
    774745      </Position2>
    775746      <Position3>
    776747        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    777         <Caret Line="115" Column="37" TopLine="102"/>
     748        <Caret Line="278" Column="35" TopLine="265"/>
    778749      </Position3>
    779750      <Position4>
    780751        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    781         <Caret Line="20" Column="31" TopLine="7"/>
     752        <Caret Line="279" Column="20" TopLine="265"/>
    782753      </Position4>
    783754      <Position5>
    784755        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    785         <Caret Line="119" Column="44" TopLine="109"/>
     756        <Caret Line="281" Column="20" TopLine="265"/>
    786757      </Position5>
    787758      <Position6>
    788759        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    789         <Caret Line="330" Column="20" TopLine="319"/>
     760        <Caret Line="287" Column="24" TopLine="271"/>
    790761      </Position6>
    791762      <Position7>
    792763        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    793         <Caret Line="38" Column="13" TopLine="25"/>
     764        <Caret Line="288" Column="33" TopLine="271"/>
    794765      </Position7>
    795766      <Position8>
    796767        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    797         <Caret Line="697" Column="41" TopLine="697"/>
     768        <Caret Line="297" Column="55" TopLine="284"/>
    798769      </Position8>
    799770      <Position9>
    800771        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    801         <Caret Line="38" Column="31" TopLine="37"/>
     772        <Caret Line="306" Column="75" TopLine="284"/>
    802773      </Position9>
    803774      <Position10>
    804775        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    805         <Caret Line="720" Column="28" TopLine="697"/>
     776        <Caret Line="307" Column="31" TopLine="284"/>
    806777      </Position10>
    807778      <Position11>
    808779        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    809         <Caret Line="471" Column="18" TopLine="462"/>
     780        <Caret Line="735" Column="39" TopLine="722"/>
    810781      </Position11>
    811782      <Position12>
    812783        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    813         <Caret Line="472" Column="22" TopLine="459"/>
     784        <Caret Line="758" Column="46" TopLine="745"/>
    814785      </Position12>
    815786      <Position13>
    816         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    817         <Caret Line="508" Column="31" TopLine="497"/>
     787        <Filename Value="Compiler\USourceCode.pas"/>
     788        <Caret Line="353" Column="4" TopLine="340"/>
    818789      </Position13>
    819790      <Position14>
    820791        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    821         <Caret Line="312" Column="62" TopLine="298"/>
     792        <Caret Line="155" Column="28" TopLine="143"/>
    822793      </Position14>
    823794      <Position15>
    824795        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    825         <Caret Line="322" Column="17" TopLine="307"/>
     796        <Caret Line="200" Column="31" TopLine="187"/>
    826797      </Position15>
    827798      <Position16>
    828799        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    829         <Caret Line="34" Column="53" TopLine="21"/>
     800        <Caret Line="197" Column="27" TopLine="187"/>
    830801      </Position16>
    831802      <Position17>
    832         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    833         <Caret Line="317" Column="19" TopLine="304"/>
     803        <Filename Value="Compiler\USourceCode.pas"/>
     804        <Caret Line="333" Column="27" TopLine="318"/>
    834805      </Position17>
    835806      <Position18>
    836         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    837         <Caret Line="491" Column="50" TopLine="491"/>
     807        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     808        <Caret Line="44" Column="26" TopLine="35"/>
    838809      </Position18>
    839810      <Position19>
    840         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    841         <Caret Line="498" Column="23" TopLine="492"/>
     811        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     812        <Caret Line="16" Column="31" TopLine="10"/>
    842813      </Position19>
    843814      <Position20>
    844         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    845         <Caret Line="466" Column="27" TopLine="453"/>
     815        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     816        <Caret Line="240" Column="3" TopLine="238"/>
    846817      </Position20>
    847818      <Position21>
    848         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    849         <Caret Line="37" Column="63" TopLine="21"/>
     819        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     820        <Caret Line="17" Column="22" TopLine="4"/>
    850821      </Position21>
    851822      <Position22>
    852         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    853         <Caret Line="680" Column="40" TopLine="680"/>
     823        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     824        <Caret Line="37" Column="60" TopLine="24"/>
    854825      </Position22>
    855826      <Position23>
    856         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    857         <Caret Line="318" Column="18" TopLine="304"/>
     827        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     828        <Caret Line="172" Column="1" TopLine="159"/>
    858829      </Position23>
    859830      <Position24>
    860         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    861         <Caret Line="692" Column="3" TopLine="676"/>
     831        <Filename Value="E:\Projekty\PascalClassLibrary\Generics\TemplateGenerics\Generic\GenericList.inc"/>
     832        <Caret Line="20" Column="23" TopLine="1"/>
    862833      </Position24>
    863834      <Position25>
    864835        <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    865         <Caret Line="27" Column="66" TopLine="14"/>
     836        <Caret Line="202" Column="46" TopLine="187"/>
    866837      </Position25>
    867       <Position26>
    868         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    869         <Caret Line="8" Column="62" TopLine="4"/>
    870       </Position26>
    871       <Position27>
    872         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    873         <Caret Line="20" Column="26" TopLine="4"/>
    874       </Position27>
    875       <Position28>
    876         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    877         <Caret Line="3" Column="67" TopLine="1"/>
    878       </Position28>
    879       <Position29>
    880         <Filename Value="Compiler\Analyze\UPascalParser.pas"/>
    881         <Caret Line="27" Column="32" TopLine="14"/>
    882       </Position29>
    883       <Position30>
    884         <Filename Value="Compiler\UCompiler.pas"/>
    885         <Caret Line="82" Column="20" TopLine="70"/>
    886       </Position30>
    887838    </JumpHistory>
    888839  </ProjectOptions>
Note: See TracChangeset for help on using the changeset viewer.