Article View: pl.comp.lang.pascal
Article #93131Re: Property -- podwujna składnia
From: Łukasz 'Maly' Ostrowski
Date: Thu, 14 Oct 2010 12:30
Date: Thu, 14 Oct 2010 12:30
38 lines
1924 bytes
1924 bytes
On Thu, 14 Oct 2010 12:02:36 +0200, webmajsterek@poczta.onet.pl wrote: > Type PCell=^TCell; > TCell=Record > x,y,value:Integer; > end; > > <snip> > > var MyClass:TMyClass; > > MyClass[1,1].x=10; // poprawnie > MyClass[1,1]^.x:=10; // tez kompilator akceptuje ; > > ale jak zrobie > > with MyClass[1,1]^ do begin // tylko taka forme akceptuje kompilator > x:=10; > end; > > ktoś potrafi to wytłumaczyć dlaczego tak się dzieje ?? Albo jakiś syntactic sugar w fpc, albo błąd w analizatorze który traktuje jakby ^TCell był równoważny class[w uproszczeniu ^object, więc w uproszczeniu jest ;-)] i poprawia . na dereference i member access operator z automatu w AST, bo takie ma "ukryte" znaczenie member access operator dla class. A przy with nie ma explicite member access operatora i pewnie dlatego się kompilator gubi. To drugie to domysł, nie kojarzę żeby był taki cukier składniowy w fpc kiedykolwiek ;-), więc zakładam że to bug jakiś. -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Technical Details
Message-ID:
<56w8uz6hdv9w$.11cnobf7mz1nq.dlg@40tude.net>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mailReferences:
<6a48.0000010e.4cb6d53c@newsgate.onet.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail From: Łukasz 'Maly' Ostrowski <maly@USUNnemo.pl> Newsgroups: pl.comp.lang.pascal Subject: Re: Property -- podwujna składnia Date: Thu, 14 Oct 2010 14:30:45 +0200 Organization: Acme Lines: 38 Message-ID: <56w8uz6hdv9w$.11cnobf7mz1nq.dlg@40tude.net> References: <6a48.0000010e.4cb6d53c@newsgate.onet.pl> NNTP-Posting-Host: static-78-9-71-129.ssp.dialog.net.pl Mime-Version: 1.0 X-Trace: news.dialog.net.pl 1287059453 7388 78.9.71.129 (14 Oct 2010 12:30:53 GMT) X-Complaints-To: abuse@dialog.net.pl NNTP-Posting-Date: Thu, 14 Oct 2010 12:30:53 +0000 (UTC) User-Agent: 40tude_Dialog/2.0.15.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit