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

Reply via email to