On Jan 14, 2008, at 10:53 AM, Michael Van Canneyt wrote:



On Mon, 14 Jan 2008, Damien Gerard wrote:


On Jan 14, 2008, at 10:27 AM, Michael Van Canneyt wrote:



On Mon, 14 Jan 2008, Damien Gerard wrote:


With fpc you can get "myfile.pas(77,47) Warning: Constructing a class
"xxxx"
with abstract methods"
I just would like to know why it is allowed to build classes with abstract methods. AFIK it is different from other compilers and it is a bit strange
for
me.

Delphi gives exactly the same warning.

I don't remember that.

D:\Temp>dcc32 unit1
Borland Delphi Version 15.0
Copyright (c) 1983,2002 Borland Software Corporation
Unit1.pas(32) Warning: Constructing instance of 'TStrings' containing abstract method 'TStrings.Clear' Unit1.pas(32) Warning: Constructing instance of 'TStrings' containing abstract method 'TStrings.Delete' Unit1.pas(32) Warning: Constructing instance of 'TStrings' containing abstract method 'TStrings.Insert'
Unit1.pas(32) Hint: Value assigned to 'T' never used
Unit1.pas(36)
37 lines, 0.11 seconds, 475 bytes code, 8 bytes data.


Yes I trust you don't wory, just my mind is playing with me :)


It is allowed to create such instances: as long as you don't call any of the
abstract methods, there will be no problem.


Is there a way to abort the compilation in this cases instead of a warning ?

Currently not.

Thanks



--
Damien Gerard
[EMAIL PROTECTED]

Le temps n'a pas d'importance. Seul le code est important
   -- (f00ty)




_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to