Browse Source

+ 270 271

peter 26 years ago
parent
commit
efa1cf0a6a
3 changed files with 60 additions and 0 deletions
  1. 21 0
      bugs/bug0270.pp
  2. 37 0
      bugs/bug0271.pp
  3. 2 0
      bugs/readme.txt

+ 21 - 0
bugs/bug0270.pp

@@ -0,0 +1,21 @@
+unit bug0270;
+
+{$mode tp}
+
+interface
+
+const
+   s='df';
+
+{$IFDEF VDE}
+   SFilterOpen      = ' (*.nnn)|*.nnn' + '|' + 'Alle Files (*.*)|*.*';
+   SFilterSave      = ' (*.nnn)|*.nnn';
+   SFilterOpen2     = ' (*.vvv)|*.vvv' + '|' + 'All Files (*.*)|*.*';
+   SFilterSave2     = ' (*.vvv)|*.vvv';
+   SFilterOpen3     = ' (*.eee)|*.eee' + '|' + 'All Files (*.*)|*.*';
+   SFilterSave3     = ' (*.eee)|*.eee';
+{$ENDIF}
+
+implementation
+
+end. 

+ 37 - 0
bugs/bug0271.pp

@@ -0,0 +1,37 @@
+{$MODE OBJFPC}
+
+{
+  The problem is that only a entry to FPC_ABSTRACTERROR is generated and the
+  load will be done using the mangledname for the procedure which doesn't
+  exists.
+  Adding poabstractmethod to po_compatibility_options is required.
+}
+
+type
+    int32 = longint;
+
+    tscanline = packed record
+        x1, x2, y : int32;
+    end;
+
+    pcolorindex = int32;
+
+    tcproc = procedure(const scan : tscanline;
+        const data : pcolorindex) of object;
+
+    a = class
+        _copyscan : tcproc;
+
+        procedure proc1(const scan : tscanline;
+            const data : pcolorindex); virtual; abstract;
+
+        procedure setproc;
+    end;
+
+procedure a.setproc;
+begin
+    _copyscan := @proc1;
+end;
+
+begin
+end.

+ 2 - 0
bugs/readme.txt

@@ -359,3 +359,5 @@ bug0266.pp   write cuts 256 char
 bug0267.pp   parameters after methodpointer are wrong
 bug0268.pp   crash with exceptions
 bug0269.pp   wrong linenumber for repeat until when type mismatch
+bug0270.pp   unexpected eof in tp mode with (* and directives
+bug0271.pp   abstract methods can't be assigned to methodpointers