Florian Klaempfl wrote:

It's simply the philosophy of pascal: things which need not to work
don't work. The extra type gives no gain, so why should be allowed?

I am not sure it is one of those things that need not work.

You could look at it from a different perspective: It does not
add any ambiguity to anything at all. Why then disallow it.

I mean, is there really a difference between this:

type
 pMyRec = ^tMyRec;

type
  tMyRec = Record
    data:pointer;
    next:pMyRec;
  end;

and this:

type
  pMyRec = ^tMyRec;

  tMyRec = Record
    data:pointer;
    next:pMyRec;
  end;

especially since there isn't a different kind of declaration
between the first 'type' and the second --and even if there were.

> It makes
- reading the code harder
- work for the compiler harder => slower and more error prone compiler

Interesting... this little bit of flexiblity would make
life that hard for the compiler?

So, these 2 different forms are theated differently by the
compiler too?

This:

const SOME_NUMBER1 = 1;
const SOME_NUMBER2 = 2;
const SOME_NUMBER3 = 3;
const SOME_NUMBER4 = 4;

and this:

const
  SOME_NUMBER1 = 1;
  SOME_NUMBER2 = 2;
  SOME_NUMBER3 = 3;
  SOME_NUMBER4 = 4;


Cheers,
Ray

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

Reply via email to