Browse Source

* fix for length(char) in const expressions

pierre 27 years ago
parent
commit
c1b6f90bcf
3 changed files with 16 additions and 5 deletions
  1. 6 2
      rtl/inc/sstrings.inc
  2. 5 1
      rtl/inc/system.inc
  3. 5 2
      rtl/inc/systemh.inc

+ 6 - 2
rtl/inc/sstrings.inc

@@ -126,11 +126,12 @@ begin
 end;
 end;
 
 
 
 
+{ removed must be internal to be accepted in const expr !! PM
 function length(c:char):StrLenInt;
 function length(c:char):StrLenInt;
 begin
 begin
   Length:=1;
   Length:=1;
 end;
 end;
-
+}
 
 
 {$ifdef IBM_CHAR_SET}
 {$ifdef IBM_CHAR_SET}
 const
 const
@@ -936,7 +937,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.15  1998-11-04 10:20:50  peter
+  Revision 1.16  1998-11-05 10:29:34  pierre
+   * fix for length(char) in const expressions
+
+  Revision 1.15  1998/11/04 10:20:50  peter
     * ansistring fixes
     * ansistring fixes
 
 
   Revision 1.14  1998/10/11 14:30:19  peter
   Revision 1.14  1998/10/11 14:30:19  peter

+ 5 - 1
rtl/inc/system.inc

@@ -57,6 +57,7 @@ Function  hi(l : Longint) : Word;  [INTERNPROC: In_hi_long];
 
 
 Function chr(b : byte) : Char;      [INTERNPROC: In_chr_byte];
 Function chr(b : byte) : Char;      [INTERNPROC: In_chr_byte];
 Function Length(s : string) : byte; [INTERNPROC: In_Length_string];
 Function Length(s : string) : byte; [INTERNPROC: In_Length_string];
+Function Length(c : char) : byte;   [INTERNPROC: In_Length_string];
 
 
 Procedure Reset(var f : TypedFile);   [INTERNPROC: In_Reset_TypedFile];
 Procedure Reset(var f : TypedFile);   [INTERNPROC: In_Reset_TypedFile];
 Procedure Rewrite(var f : TypedFile); [INTERNPROC: In_Rewrite_TypedFile];
 Procedure Rewrite(var f : TypedFile); [INTERNPROC: In_Rewrite_TypedFile];
@@ -461,7 +462,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.40  1998-11-04 20:34:02  michael
+  Revision 1.41  1998-11-05 10:29:36  pierre
+   * fix for length(char) in const expressions
+
+  Revision 1.40  1998/11/04 20:34:02  michael
   + Removed ifdef useansistrings
   + Removed ifdef useansistrings
 
 
   Revision 1.39  1998/10/12 22:11:28  jonas
   Revision 1.39  1998/10/12 22:11:28  jonas

+ 5 - 2
rtl/inc/systemh.inc

@@ -198,7 +198,7 @@ Procedure SetLength(var s:shortstring;len:StrLenInt);
 { Char functions to overcome overloading problem with ansistrings }
 { Char functions to overcome overloading problem with ansistrings }
 function  copy(c:char;index : StrLenInt;count : StrLenInt): shortstring;
 function  copy(c:char;index : StrLenInt;count : StrLenInt): shortstring;
 function  pos(const substr : shortstring;c:char): StrLenInt;
 function  pos(const substr : shortstring;c:char): StrLenInt;
-function  length(c:char):StrLenInt;
+function  length(c:char):byte;
 
 
 Function  upCase(const s:shortstring):shortstring;
 Function  upCase(const s:shortstring):shortstring;
 Function  upCase(c:Char):Char;
 Function  upCase(c:Char):Char;
@@ -430,7 +430,10 @@ const
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.39  1998-11-04 20:34:01  michael
+  Revision 1.40  1998-11-05 10:29:37  pierre
+   * fix for length(char) in const expressions
+
+  Revision 1.39  1998/11/04 20:34:01  michael
   + Removed ifdef useansistrings
   + Removed ifdef useansistrings
 
 
   Revision 1.38  1998/11/04 10:20:51  peter
   Revision 1.38  1998/11/04 10:20:51  peter