소스 검색

some more bugs from web page

pierre 25 년 전
부모
커밋
955d3f04aa
5개의 변경된 파일103개의 추가작업 그리고 0개의 파일을 삭제
  1. 1 0
      tests/webtbs/tbug735.pp
  2. 5 0
      tests/webtbs/tbug856.pp
  3. 16 0
      tests/webtbs/tbug856u.pp
  4. 41 0
      tests/webtbs/tbug873.pp
  5. 40 0
      tests/webtbs/tbug873a.pp

+ 1 - 0
tests/webtbs/tbug735.pp

@@ -1,4 +1,5 @@
 {$asmmode intel}
+{$inline on}
 
 procedure DoIt;
 begin

+ 5 - 0
tests/webtbs/tbug856.pp

@@ -0,0 +1,5 @@
+{$MODE objfpc}
+uses tbug856u;
+begin
+  TMyClass.Create(1);
+end.

+ 16 - 0
tests/webtbs/tbug856u.pp

@@ -0,0 +1,16 @@
+{$MODE objfpc}
+unit tbug856u;
+interface
+type
+  TMyClass = class
+  protected
+    constructor Create(x: Integer);
+  end;
+
+implementation
+
+constructor TMyClass.Create(x: Integer);
+begin
+end;
+
+end.

+ 41 - 0
tests/webtbs/tbug873.pp

@@ -0,0 +1,41 @@
+{$mode objfpc}
+program Teste;
+
+// Compile it using the Delphi extensions
+// directive.
+
+type
+    TObject = class
+      private
+        procedure SetValue(v: integer);
+      public
+        fx: integer;
+        Constructor Create;
+        Destructor Destroy;
+        property x: integer read fx write SetValue;
+    end;
+
+var
+    Obj: TObject;
+
+Constructor TObject.Create;
+begin
+    fx := 0;
+end;
+
+Destructor TObject.Destroy;
+begin
+end;
+
+procedure TObject.SetValue(v: integer);
+begin
+    fx := v + 2;
+end;
+
+begin
+    writeln('This will be printed');
+    Obj := TObject.Create;
+    writeln('This won''t.');
+end.
+
+

+ 40 - 0
tests/webtbs/tbug873a.pp

@@ -0,0 +1,40 @@
+{$mode objfpc}
+program Teste;
+
+// Compile it using the Delphi extensions
+// directive.
+
+type
+    TObjectB = class
+      private
+        procedure SetValue(v: integer);
+      public
+        fx: integer;
+        Constructor Create;
+        Destructor Destroy;
+        property x: integer read fx write SetValue;
+    end;
+
+var
+    Obj: TObjectB;
+
+Constructor TObjectB.Create;
+begin
+    fx := 0;
+end;
+
+Destructor TObjectB.Destroy;
+begin
+end;
+
+procedure TObjectB.SetValue(v: integer);
+begin
+    fx := v + 2;
+end;
+
+begin
+    writeln('This will be printed');
+    Obj := TObjectB.Create;
+    writeln('This won''t.');
+end.
+