[fpc-pascal] {$J} default setting for today

2016-02-20 Thread Mr Bee
Hi, I read this: http://www.freepascal.org/docs-html/ref/refse10.html
"Support for assigning values to typed constants is controlled by the {$J} 
directive: it can be switched off, but is on by default (for Turbo Pascal 
compatibility). Initialized variables are always allowed."
Then I read this: 
http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/compdirswriteabletypedconstants_xml.html
"In early versions of Delphi and Object Pascal, typed constants were always 
writeable, corresponding to the {$J+} state. Old source code that uses 
writeable typed constants must be compiled in the {$J+} state, but for new 
applications it is recommended that you use initialized variables and compile 
your code in the {$J-} state."
I think we should follow Delphi in this case. Typed constant should not be 
writeable by default. That's what a constant should be. The old behavior is a 
flaw. At least let {$J-} be the default for {$MODE DELPHI} and {$MODE OBJFPC}.
What do you think?
–Mr Bee
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Re: [fpc-pascal] {$J} default setting for today

2016-02-20 Thread Bart
On 2/20/16, Mr Bee  wrote:

> I think we should follow Delphi in this case. Typed constant should not be
> writeable by default. That's what a constant should be. The old behavior is
> a flaw. At least let {$J-} be the default for {$MODE DELPHI} and {$MODE
> OBJFPC}

Yes please, break a ton of existing projects.

Bart
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] {$J} default setting for today

2016-02-20 Thread Jonas Maebe

Mr Bee wrote:

I think we should follow Delphi in this case. Typed constant should not
be writeable by default. That's what a constant should be. The old
behavior is a flaw. At least let {$J-} be the default for {$MODE DELPHI}
and {$MODE OBJFPC}.

What do you think?


It can maybe be changed for {$mode delphiunicode}


Jonas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] {$J} default setting for today

2016-02-20 Thread Graeme Geldenhuys
On 2016-02-20 13:09, Bart wrote:
> Yes please, break a ton of existing projects.

Yes, then they can finally fix there code and use global variables instead.

If it was originally implemented for Turbo Pascal compatibility, why is
it enabled for ObjFPC and Delphi modes?

Regards,
  - Graeme -

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] {$J} default setting for today

2016-02-20 Thread Jonas Maebe

Graeme Geldenhuys wrote:

If it was originally implemented for Turbo Pascal compatibility, why is
it enabled for ObjFPC and Delphi modes?


Because original Delphi versions also had {$j+} by default.


Jonas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal