Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2016-02

{$J} default setting for today

5 messages · 4 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

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

Reply by email

Bart
to Mr Bee
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

Reply by email

Graeme Geldenhuys
to Bart: Yes please, break a ton of existing projects. Bart
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

Reply by email