@@ -0,0 +1,42 @@
+{ %fail }
+
+{$ifdef fpc}
+ {$mode delphi}
+ {$asmmode intel}
+{$endif}
+type tscreen = class
+ x : Cardinal;
+ end;
+type ttestobj = class
+ screen : tscreen;
+ constructor create;
+ function testasmcall : tscreen;
+end;
+var
+ testobj : ttestobj;
+constructor ttestobj.create;
+begin
+ asm
+ mov screen.x,0
+function ttestobj.testasmcall : tscreen;
+asm
+mov screen.x, 0
+ADD screen.x, 1
+result := screen;
+testobj := ttestobj.create;
+testobj.testasmcall;
+testobj.destroy;
+end.