2
0
peter 26 жил өмнө
parent
commit
f58e010de1

+ 35 - 28
ide/text/fpdebug.pas

@@ -231,7 +231,7 @@ procedure DoneGDBWindow;
 procedure InitBreakpoints;
 procedure DoneBreakpoints;
 procedure InitWatches;
-procedure DoneWatches;                                                                                                                                                                                                                                         
+procedure DoneWatches;
 
 implementation
 
@@ -315,10 +315,14 @@ end;
 
 procedure TDebugController.Continue;
 begin
+{$ifdef NODEBUG}
+  NoDebugger;
+{$else}
   if not debuggee_started then
     Run
   else
     inherited Continue;
+{$endif NODEBUG}
 end;
 
 procedure TDebugController.UntilReturn;
@@ -921,26 +925,26 @@ begin
 end;
 
 (* function TBreakpointListBox.AddModuleName(const Name: string): PString;
-var P: PString;                                                                                                                                                                                                                                                
+var P: PString;
 begin
   if ModuleNames<>nil then
     P:=ModuleNames^.Add(Name)
   else
-    P:=nil;                                                                                                                                                                                                                                                    
+    P:=nil;
   AddModuleName:=P;
 end;  *)
 
 function TBreakpointListBox.GetText(Item,MaxLen: Sw_Integer): String;
 var P: PBreakpointItem;
-    S: string;                                                                                                                                                                                                                                                 
+    S: string;
 begin
-  P:=List^.At(Item);                                                                                                                                                                                                                                           
+  P:=List^.At(Item);
   S:=P^.GetText(MaxLen);
   GetText:=copy(S,1,MaxLen);
 end;
-                                                                                                                                                                                                                                                               
+
 procedure TBreakpointListBox.Clear;
-begin                                                                                                                                                                                                                                                          
+begin
   if assigned(List) then
     Dispose(List, Done);
   List:=nil;
@@ -1058,12 +1062,12 @@ var
   B: TDrawBuffer;
   Text: String;
   SCOff: Byte;
-  TC: byte;                                                                                                                                                                                                                                                    
-procedure MT(var C: word); begin if TC<>0 then C:=(C and $ff0f) or (TC and $f0); end;                                                                                                                                                                          
+  TC: byte;
+procedure MT(var C: word); begin if TC<>0 then C:=(C and $ff0f) or (TC and $f0); end;
 begin
   if (Owner<>nil) then TC:=ord(Owner^.GetColor(6)) else TC:=0;
   if State and (sfSelected + sfActive) = (sfSelected + sfActive) then
-  begin                                                                                                                                                                                                                                                        
+  begin
     NormalColor := GetColor(1);
     FocusedColor := GetColor(3);
     SelectedColor := GetColor(4);
@@ -1073,19 +1077,19 @@ begin
     SelectedColor := GetColor(4);
   end;
   if Transparent then
-    begin MT(NormalColor); MT(SelectedColor); end;                                                                                                                                                                                                             
+    begin MT(NormalColor); MT(SelectedColor); end;
   if NoSelection then
      SelectedColor:=NormalColor;
   if HScrollBar <> nil then Indent := HScrollBar^.Value
   else Indent := 0;
-  ColWidth := Size.X div NumCols + 1;                                                                                                                                                                                                                          
-  for I := 0 to Size.Y - 1 do                                                                                                                                                                                                                                  
+  ColWidth := Size.X div NumCols + 1;
+  for I := 0 to Size.Y - 1 do
   begin
     for J := 0 to NumCols-1 do
     begin
       Item := J*Size.Y + I + TopItem;
       CurCol := J*ColWidth;
-      if (State and (sfSelected + sfActive) = (sfSelected + sfActive)) and                                                                                                                                                                                     
+      if (State and (sfSelected + sfActive) = (sfSelected + sfActive)) and
         (Focused = Item) and (Range > 0) then
       begin
         Color := FocusedColor;
@@ -1094,15 +1098,15 @@ begin
       end
       else if (Item < Range) and IsSelected(Item) then
       begin
-        Color := SelectedColor;                                                                                                                                                                                                                                
-        SCOff := 2;                                                                                                                                                                                                                                            
+        Color := SelectedColor;
+        SCOff := 2;
       end
       else
-      begin                                                                                                                                                                                                                                                    
-        Color := NormalColor;                                                                                                                                                                                                                                  
+      begin
+        Color := NormalColor;
         SCOff := 4;
       end;
-      MoveChar(B[CurCol], ' ', Color, ColWidth);                                                                                                                                                                                                               
+      MoveChar(B[CurCol], ' ', Color, ColWidth);
       if Item < Range then
       begin
         Text := GetText(Item, ColWidth + Indent);
@@ -1212,8 +1216,8 @@ end;
 procedure TBreakpointsWindow.ClearBreakpoints;
 begin
   BreakLB^.Clear;
-  ReDraw;                                                                                                                                                                                                                                                      
-end;                                                                                                                                                                                                                                                           
+  ReDraw;
+end;
 
 procedure TBreakpointsWindow.ReloadBreakpoints;
   procedure InsertInBreakLB(P : PBreakpoint);
@@ -1231,10 +1235,10 @@ procedure TBreakpointsWindow.SizeLimits(var Min, Max: TPoint);
 begin
   inherited SizeLimits(Min,Max);
   Min.X:=40; Min.Y:=18;
-end;                                                                                                                                                                                                                                                           
+end;
 
 procedure TBreakpointsWindow.Close;
-begin                                                                                                                                                                                                                                                          
+begin
   Hide;
 end;
 
@@ -1273,7 +1277,7 @@ procedure TBreakpointsWindow.Update;
 begin
   ClearBreakpoints;
   ReloadBreakpoints;
-end;                                                                                                                                                                                                                                                           
+end;
 
 destructor TBreakpointsWindow.Done;
 begin
@@ -1733,8 +1737,8 @@ begin
       end;
   end;
   inherited HandleEvent(Event);
-end;                                                                                                                                                                                                                                                           
-                                                                                                                                                                                                                                                               
+end;
+
       (* constructor TWatchesListBox.Load(var S: TStream);
       procedure   TWatchesListBox.Store(var S: TStream); *)
       destructor  TWatchesListBox.Done;
@@ -1778,7 +1782,7 @@ end;
       Dispose(WLB,done);
       inherited done;
     end;
-    
+
 
 {****************************************************************************
                          TWatchItemDialog
@@ -1948,7 +1952,10 @@ end.
 
 {
   $Log$
-  Revision 1.22  1999-07-12 13:14:15  pierre
+  Revision 1.23  1999-07-28 23:11:17  peter
+    * fixes from gabor
+
+  Revision 1.22  1999/07/12 13:14:15  pierre
     * LineEnd bug corrected, now goes end of text even if selected
     + Until Return for debugger
     + Code for Quit inside GDB Window

+ 6 - 3
ide/text/fpdesk.pas

@@ -90,7 +90,7 @@ begin
   {$ifndef DEV}Exit;{$endif}
 
   F^.CreateResource(resDesktopFlags,rcBinary,0);
-  F^.AddResourceEntry(resDesktopFlags,langDefault,0,@DesktopFileFlags,
+  F^.AddResourceEntry(resDesktopFlags,langDefault,0,DesktopFileFlags,
     SizeOf(DesktopFileFlags));
 end;
 
@@ -107,7 +107,7 @@ begin
   {$ifndef DEV}Exit;{$endif}
   New(F, LoadFile(DesktopPath));
   OK:=true;
-  
+
 end;
 
 function SaveDesktop: boolean;
@@ -137,7 +137,10 @@ end;
 END.
 {
   $Log$
-  Revision 1.5  1999-06-30 23:58:13  pierre
+  Revision 1.6  1999-07-28 23:11:18  peter
+    * fixes from gabor
+
+  Revision 1.5  1999/06/30 23:58:13  pierre
     + BreakpointsList Window implemented
       with Edit/New/Delete functions
     + Individual breakpoint dialog with support for all types

+ 19 - 2
ide/text/fpmdebug.inc

@@ -43,11 +43,14 @@ end;
 
 procedure TIDEApp.DoShowCallStack;
 begin
-  NotImplemented;                                                                                                                                                                                                                                              
+  NotImplemented;
 end;
 
 procedure TIDEApp.DoShowBreakpointList;
 begin
+{$ifdef NODEBUG}
+  NoDebugger;
+{$else}
   If assigned(BreakpointsWindow) then
     begin
       BreakpointsWindow^.Update;
@@ -59,10 +62,14 @@ begin
       New(BreakpointsWindow,Init);
       Desktop^.Insert(BreakpointsWindow);
     end;
+{$endif NODEBUG}
 end;
 
 procedure TIDEApp.DoShowWatches;
 begin
+{$ifdef NODEBUG}
+  NoDebugger;
+{$else}
   If assigned(WatchesWindow) then
     begin
       WatchesWindow^.Update;
@@ -73,9 +80,15 @@ begin
       New(WatchesWindow,Init);
       Desktop^.Insert(WatchesWindow);
     end;
+{$endif NODEBUG}
 end;
 
 procedure TIDEApp.DoAddWatch;
+{$ifdef NODEBUG}
+begin
+  NoDebugger;
+end;
+{$else}
 var
   P: PWatch;
   EditorWindow : PSourceWindow;
@@ -95,10 +108,14 @@ begin
   else
     dispose(P,Done);
 end;
+{$endif NODEBUG}
 
 {
   $Log$
-  Revision 1.6  1999-07-10 01:24:19  pierre
+  Revision 1.7  1999-07-28 23:11:19  peter
+    * fixes from gabor
+
+  Revision 1.6  1999/07/10 01:24:19  pierre
    + First implementation of watches window
 
   Revision 1.5  1999/06/30 23:58:17  pierre

+ 17 - 15
ide/text/fpmrun.inc

@@ -82,22 +82,21 @@ begin
   if not debugger^.debuggee_started then
     Debugger^.StartTrace
   else
-   Debugger^.TraceStep;                                                                                                                                                                                                                                        
-  { I think we should not try to go deeper !                                                                                                                                                                                                                   
-    if the source is not found PM }                                                                                                                                                                                                                            
-  While (Debugger^.InvalidSourceLine and                                                                                                                                                                                                                       
+   Debugger^.TraceStep;
+  { I think we should not try to go deeper !
+    if the source is not found PM }
+  While (Debugger^.InvalidSourceLine and
          Debugger^.debuggee_started and
          not Debugger^.error) do
-    begin                                                                                                                                                                                                                                                      
-      Inc(Debugger^.HiddenStepsCount);                                                                                                                                                                                                                         
-      Debugger^.TraceNext;                                                                                                                                                                                                                                     
-    end;                                                                                                                                                                                                                                                       
-  Debugger^.AnnotateError;                                                                                                                                                                                                                                     
-{$else NODEBUG}                                                                                                                                                                                                                                                
-  NoDebugger;                                                                                                                                                                                                                                                  
-{$endif NODEBUG}                                                                                                                                                                                                                                               
-end;                                                                                                                                                                                                                                                           
-                                                                                                                                                                                                                                                               
+    begin
+      Inc(Debugger^.HiddenStepsCount);
+      Debugger^.TraceNext;
+    end;
+  Debugger^.AnnotateError;
+{$else NODEBUG}
+  NoDebugger;
+{$endif NODEBUG}
+end;
 
 procedure TIDEApp.DoRun;
 begin
@@ -239,7 +238,10 @@ end;
 
 {
   $Log$
-  Revision 1.16  1999-07-12 13:14:19  pierre
+  Revision 1.17  1999-07-28 23:11:20  peter
+    * fixes from gabor
+
+  Revision 1.16  1999/07/12 13:14:19  pierre
     * LineEnd bug corrected, now goes end of text even if selected
     + Until Return for debugger
     + Code for Quit inside GDB Window

+ 5 - 2
ide/text/fpmsrch.inc

@@ -95,7 +95,7 @@ begin
   OpenSymbolBrowser(0,0,'Units','Global scope',nil,S,nil,nil,nil);
 end;
 
-function SymbolDialog(const S : string) : PDialog;
+function SymbolDialog(S : string) : PDialog;
 var D: PDialog;
     R,R1,R2: TRect;
     IL: PInputLine;
@@ -137,7 +137,10 @@ end;
 
 {
   $Log$
-  Revision 1.10  1999-06-29 12:49:55  pierre
+  Revision 1.11  1999-07-28 23:11:21  peter
+    * fixes from gabor
+
+  Revision 1.10  1999/06/29 12:49:55  pierre
    * SearchSymbol works
 
   Revision 1.9  1999/06/28 19:32:22  peter

+ 8 - 5
ide/text/fpsymbol.pas

@@ -193,7 +193,7 @@ begin
       Dispose(ModulesCollection,done);
       ModulesCollection:=nil;
     end;
-end;                                                                                                                                                                                                                                                           
+end;
 
 function NewBrowserTabItem(ASign: char; ALink: PView; ANext: PBrowserTabItem): PBrowserTabItem;
 var P: PBrowserTabItem;
@@ -681,7 +681,7 @@ end;
 destructor TSymbolInheritanceView.Done;
 begin
   { do not dispose,
-    belongs to a symbolcollection (PM) 
+    belongs to a symbolcollection (PM)
   if assigned(Root) then
     dispose(Root,done); }
   Inherited Done;
@@ -737,10 +737,10 @@ begin
   if P=nil then Exit;
 
   S:=PObjectSymbol(P)^.Symbol;
-  
+
   { this happens for the top objects view (PM) }
   if S=nil then exit;
-  
+
   if S^.Ancestor=nil then Anc:=nil else
     Anc:=SearchObjectForSymbol(S^.Ancestor);
   OpenSymbolBrowser(Origin.X-1,FOC-Delta.Y+1,
@@ -1160,7 +1160,10 @@ end;
 END.
 {
   $Log$
-  Revision 1.17  1999-06-28 12:35:05  pierre
+  Revision 1.18  1999-07-28 23:11:22  peter
+    * fixes from gabor
+
+  Revision 1.17  1999/06/28 12:35:05  pierre
     + CloseAllBrowsers needed before compilation to avoid problems
     + ModulesCollection and GlobalsCollection to avoid memory leaks
 

+ 7 - 4
ide/text/fptools.pas

@@ -111,7 +111,7 @@ type
       constructor Load(var S: TStream);
       procedure   Store(var S: TStream);
       destructor  Done; virtual;
-      procedure   FocusItem(i : sw_integer);                                                                                                                                                                                                   
+      procedure   FocusItem(i : sw_integer);
       procedure   SizeLimits(var Min, Max: TPoint); virtual;
     private
       MsgLB : PToolMessageListBox;
@@ -1440,8 +1440,8 @@ end;
 procedure TMessagesWindow.FocusItem(i : sw_integer);
 begin
   MsgLB^.FocusItem(i);
-end;                                                                                                                                                                                                                                                           
-                                                                                                                                                                                                                                                               
+end;
+
 procedure TMessagesWindow.HandleEvent(var Event: TEvent);
 begin
   case Event.What of
@@ -1505,7 +1505,10 @@ end;
 END.
 {
   $Log$
-  Revision 1.11  1999-07-12 13:14:21  pierre
+  Revision 1.12  1999-07-28 23:11:24  peter
+    * fixes from gabor
+
+  Revision 1.11  1999/07/12 13:14:21  pierre
     * LineEnd bug corrected, now goes end of text even if selected
     + Until Return for debugger
     + Code for Quit inside GDB Window

+ 16 - 13
ide/text/fpvars.pas

@@ -33,19 +33,19 @@ type
 const ClipboardWindow  : PClipboardWindow = nil;
       CalcWindow       : PCalculator = nil;
       RecentFileCount  : integer = 0;
-      OpenExts         : string[80] = '*.pas;*.pp;*.inc';
-      HighlightExts    : string[80] = '*.pas;*.pp;*.inc';
+      OpenExts         : string{$ifdef GABOR}[24]{$endif} = '*.pas;*.pp;*.inc';
+      HighlightExts    : string{$ifdef GABOR}[24]{$endif} = '*.pas;*.pp;*.inc';
       TabsPattern      : string{$ifdef GABOR}[30]{$endif} = 'make*;make*.*';
       SourceDirs       : string{$ifdef GABOR}[30]{$endif} = '';
-      PrimaryFile      : string{$ifdef GABOR}[80]{$endif} = '';
-      PrimaryFileMain  : string{$ifdef GABOR}[80]{$endif} = '';
+      PrimaryFile      : string{$ifdef GABOR}[60]{$endif} = '';
+      PrimaryFileMain  : string{$ifdef GABOR}[60]{$endif} = '';
       PrimaryFileSwitches : string{$ifdef GABOR}[30]{$endif} = '';
-      PrimaryFilePara  : string = '';
+      PrimaryFilePara  : string{$ifdef GABOR}[40]{$endif} = '';
       GDBOutputFile    : string{$ifdef GABOR}[30]{$endif} = 'gdb$$$.txt';
       IsEXECompiled    : boolean = false;
       LinkAfter        : boolean = true;
-      MainFile         : string{$ifdef GABOR}[80]{$endif} = '';
-      EXEFile          : string{$ifdef GABOR}[80]{$endif} = '';
+      MainFile         : string{$ifdef GABOR}[60]{$endif} = '';
+      EXEFile          : string{$ifdef GABOR}[60]{$endif} = '';
       CompilationPhase : TCompPhase = cpNothing;
       ProgramInfoWindow: PProgramInfoWindow = nil;
       GDBWindow        : PGDBWindow = nil;
@@ -55,16 +55,16 @@ const ClipboardWindow  : PClipboardWindow = nil;
       HeapView         : PFPHeapView = nil;
       HelpFiles        : WUtils.PUnsortedStringCollection = nil;
       ShowStatusOnError: boolean = true;
-      StartupDir       : string = '.'+DirSep;
-      IDEDir           : string = '.'+DirSep;
-      INIPath          : string = ININame;
-      SwitchesPath     : string = SwitchesName;
+      StartupDir       : string{$ifdef GABOR}[50]{$endif} = '.'+DirSep;
+      IDEDir           : string{$ifdef GABOR}[50]{$endif} = '.'+DirSep;
+      INIPath          : string{$ifdef GABOR}[50]{$endif} = ININame;
+      SwitchesPath     : string{$ifdef GABOR}[50]{$endif} = SwitchesName;
       CtrlMouseAction  : integer = acTopicSearch;
       AltMouseAction   : integer = acBrowseSymbol;
       StartupOptions   : longint = 0;
       LastExitCode     : integer = 0;
       ASCIIChart       : PFPASCIIChart = nil;
-      DesktopPath      : string = DesktopName;
+      DesktopPath      : string{$ifdef GABOR}[50]{$endif} = DesktopName;
       DesktopFileFlags : longint = dfHistoryLists+dfOpenWindows;
       DesktopLocation  : byte    = dlConfigFileDir;
       AutoSaveOptions  : longint = asEnvironment+asDesktop;
@@ -83,7 +83,10 @@ implementation
 END.
 {
   $Log$
-  Revision 1.19  1999-07-10 01:24:21  pierre
+  Revision 1.20  1999-07-28 23:11:25  peter
+    * fixes from gabor
+
+  Revision 1.19  1999/07/10 01:24:21  pierre
    + First implementation of watches window
 
   Revision 1.18  1999/06/30 23:58:19  pierre

+ 29 - 16
ide/text/weditor.pas

@@ -2047,7 +2047,7 @@ end;
 procedure TCodeEditor.JumpSelStart;
 begin
   if ValidBlock then
-    SetCurPtr(SelStart.X,SelEnd.X);
+    SetCurPtr(SelStart.X,SelStart.Y);
 end;
 
 procedure TCodeEditor.JumpSelEnd;
@@ -2514,7 +2514,7 @@ begin
   S:=GetLineText(CurPos.Y);
   if CharIdxToLinePos(CurPos.Y,length(S))<CurPos.X then
     begin
-      S:=S+CharStr(' ',CurPos.X-CharIdxToLinePos(CurPos.Y,length(S))-1);
+      S:=S+CharStr(' ',CurPos.X-CharIdxToLinePos(CurPos.Y,length(S)){-1});
       SetLineText(CurPos.Y,S);
     end;
   CI:=LinePosToCharIdx(CurPos.Y,CurPos.X);
@@ -2734,7 +2734,7 @@ var S: string;
        ((AreaStart.Y<Y) and (Y<AreaEnd.Y)) or
        ((AreaEnd.Y=Y) and (X<=AreaEnd.X));
   end;
-
+var CurDY: sw_integer;
 begin
   Inc(SearchRunCount);
 
@@ -2800,6 +2800,7 @@ begin
     Owner^.Lock;
   if InArea(X,Y) then
   repeat
+    CurDY:=DY;
     S:=GetDisplayText(Y);
     P:=ContainsText(FindStr,S,X+1);
     Found:=P<>0;
@@ -2817,6 +2818,11 @@ begin
        LeftOK:=(A.X<=0) or (not( (S[A.X] in AlphaChars) or (S[A.X] in NumberChars) ));
        RightOK:=(B.X>=length(S)) or (not( (S[B.X+1] in AlphaChars) or (S[B.X+1] in NumberChars) ));
        Found:=LeftOK and RightOK;
+       if Found=false then
+         begin
+           CurDY:=0;
+           X:=B.X+1;
+         end;
      end;
 
     if Found then
@@ -2862,9 +2868,9 @@ begin
           end;
       end;
 
-    if CanExit=false then
+    if (CanExit=false) and (CurDY<>0) then
       begin
-        inc(Y,DY);
+        inc(Y,CurDY);
         if SForward then
           X:=0
         else
@@ -2982,17 +2988,21 @@ var
 
   var MatchedSymbol: boolean;
       MatchingSymbol: string;
-  function MatchesAnySpecSymbol(const What: string; SClass: TSpecSymbolClass; PartialMatch: boolean): boolean;
+  function MatchesAnySpecSymbol(What: string; SClass: TSpecSymbolClass; PartialMatch, CaseInsensitive: boolean): boolean;
   var S: string;
       I: Sw_integer;
       Match,Found: boolean;
   begin
     Found:=false;
+    if CaseInsensitive then
+      What:=UpcaseStr(What);
     if What<>'' then
     for I:=1 to GetSpecSymbolCount(SClass) do
     begin
       SymbolIndex:=I;
       S:=GetSpecSymbol(SClass,I-1);
+      if CaseInsensitive then
+        S:=UpcaseStr(S);
       if PartialMatch then Match:=MatchSymbol(What,S)
             else Match:=What=S;
       if Match then
@@ -3004,48 +3014,48 @@ var
 
   function IsCommentPrefix: boolean;
   begin
-    IsCommentPrefix:=MatchesAnySpecSymbol(SymbolConcat,ssCommentPrefix,true);
+    IsCommentPrefix:=MatchesAnySpecSymbol(SymbolConcat,ssCommentPrefix,true,false);
   end;
 
   function IsSingleLineCommentPrefix: boolean;
   begin
-    IsSingleLineCommentPrefix:=MatchesAnySpecSymbol(SymbolConcat,ssCommentSingleLinePrefix,true);
+    IsSingleLineCommentPrefix:=MatchesAnySpecSymbol(SymbolConcat,ssCommentSingleLinePrefix,true,false);
   end;
 
   function IsCommentSuffix: boolean;
   begin
-    IsCommentSuffix:=(MatchesAnySpecSymbol(SymbolConcat,ssCommentSuffix,true))
+    IsCommentSuffix:=(MatchesAnySpecSymbol(SymbolConcat,ssCommentSuffix,true,false))
       and (CurrentCommentType=SymbolIndex);
   end;
 
   function IsStringPrefix: boolean;
   begin
-    IsStringPrefix:=MatchesAnySpecSymbol(SymbolConcat,ssStringPrefix,true);
+    IsStringPrefix:=MatchesAnySpecSymbol(SymbolConcat,ssStringPrefix,true,false);
   end;
 
   function IsStringSuffix: boolean;
   begin
-    IsStringSuffix:=MatchesAnySpecSymbol(SymbolConcat,ssStringSuffix,true);
+    IsStringSuffix:=MatchesAnySpecSymbol(SymbolConcat,ssStringSuffix,true,false);
   end;
 
   function IsDirectivePrefix: boolean;
   begin
-    IsDirectivePrefix:=MatchesAnySpecSymbol(SymbolConcat,ssDirectivePrefix,true);
+    IsDirectivePrefix:=MatchesAnySpecSymbol(SymbolConcat,ssDirectivePrefix,true,false);
   end;
 
   function IsDirectiveSuffix: boolean;
   begin
-    IsDirectiveSuffix:=MatchesAnySpecSymbol(SymbolConcat,ssDirectiveSuffix,true);
+    IsDirectiveSuffix:=MatchesAnySpecSymbol(SymbolConcat,ssDirectiveSuffix,true,false);
   end;
 
   function IsAsmPrefix(const WordS: string): boolean;
   begin
-    IsAsmPrefix:=MatchesAnySpecSymbol(WordS,ssAsmPrefix,false);
+    IsAsmPrefix:=MatchesAnySpecSymbol(WordS,ssAsmPrefix,false,true);
   end;
 
   function IsAsmSuffix(const WordS: string): boolean;
   begin
-    IsAsmSuffix:=MatchesAnySpecSymbol(WordS,ssAsmSuffix,false);
+    IsAsmSuffix:=MatchesAnySpecSymbol(WordS,ssAsmSuffix,false,true);
   end;
 
   function GetCharClass(C: char): TCharClass;
@@ -3949,7 +3959,10 @@ end;
 END.
 {
   $Log$
-  Revision 1.38  1999-07-12 13:14:24  pierre
+  Revision 1.39  1999-07-28 23:11:26  peter
+    * fixes from gabor
+
+  Revision 1.38  1999/07/12 13:14:24  pierre
     * LineEnd bug corrected, now goes end of text even if selected
     + Until Return for debugger
     + Code for Quit inside GDB Window