D.gnu - gdc-0.19 violates D spec bahavior on module name case sensitivity
- Wolfgang Draxinger (9/15) Oct 17 2006 Contrary to that GDC treats the import statement case sensitive.
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (4/17) Oct 17 2006 Doesn't "names have a one-to-one correspondence with file names"
- Lars Ivar Igesund (8/28) Oct 17 2006 Yes, the doc there is a convention, not spec. It just suggest that you
- Wolfgang Draxinger (13/16) Oct 17 2006 Then you got another problem, e.g. if somebody works on a Windows
- Lars Ivar Igesund (6/22) Oct 17 2006 If that happens, you have a problem with Samba, not D.
- Wolfgang Draxinger (7/8) Oct 18 2006 The bahaviour can be freely configured and some people (not me)
- Lars Ivar Igesund (6/14) Oct 18 2006 Then they shouldn't do cross platform development ;)
- Wolfgang Draxinger (11/12) Oct 18 2006 There are a few example programs which don't compile under Linux
- Gregor Richards (4/18) Oct 18 2006 I do think this should be changed, but it's in the frontend, not GDC.
[http://www.digitalmars.com/d/module.html]By convention, package and module names are all lower case. This is because those names have a one-to-one correspondence with the operating system's directory and file names, and many file systems are not case sensitive. All lower case package and module names will minimize problems moving projects between dissimilar file systems.Contrary to that GDC treats the import statement case sensitive. If GDC sees within a case sensitive file system multiple files, which names are ambigous if treated case insensitive it should omit an error, reporting where the ambigoutiy is. Wolfgang Draxinger -- E-Mail address works, Jabber: hexarith jabber.org, ICQ: 134682867 GPG key FP: 2FC8 319E C7D7 1ADC 0408 65C6 05F5 A645 1FD3 BD3E
Oct 17 2006
Wolfgang Draxinger wrote:[http://www.digitalmars.com/d/module.html]Doesn't "names have a one-to-one correspondence with file names" instead mean that the import statement *should* be case sensitive ? --andersBy convention, package and module names are all lower case. This is because those names have a one-to-one correspondence with the operating system's directory and file names, and many file systems are not case sensitive. All lower case package and module names will minimize problems moving projects between dissimilar file systems.Contrary to that GDC treats the import statement case sensitive. If GDC sees within a case sensitive file system multiple files, which names are ambigous if treated case insensitive it should omit an error, reporting where the ambigoutiy is.
Oct 17 2006
Anders F Björklund wrote:Wolfgang Draxinger wrote:Yes, the doc there is a convention, not spec. It just suggest that you should use lower case names, since that might reduce problems when moving files between systems. -- Lars Ivar Igesund blog at http://larsivi.net DSource & #D: larsivi[http://www.digitalmars.com/d/module.html]Doesn't "names have a one-to-one correspondence with file names" instead mean that the import statement *should* be case sensitive ? --andersBy convention, package and module names are all lower case. This is because those names have a one-to-one correspondence with the operating system's directory and file names, and many file systems are not case sensitive. All lower case package and module names will minimize problems moving projects between dissimilar file systems.Contrary to that GDC treats the import statement case sensitive. If GDC sees within a case sensitive file system multiple files, which names are ambigous if treated case insensitive it should omit an error, reporting where the ambigoutiy is.
Oct 17 2006
Lars Ivar Igesund wrote:Yes, the doc there is a convention, not spec. It just suggest that you should use lower case names, since that might reduce problems when moving files between systems.Then you got another problem, e.g. if somebody works on a Windows box and has mounted his stuff from a Linux/Samba Server. Depending on the configuration of Samba the files might end up all uppercase, in which case a compiler farm running under Linux are unable to locate the files, since Samba made them uppercase. I think that D, aiming to cancel out ambiguouties, should make it a definitive specification, that all files and module names are treated case insensitive. Wolfgang Draxinger -- E-Mail address works, Jabber: hexarith jabber.org, ICQ: 134682867 GPG key FP: 2FC8 319E C7D7 1ADC 0408 65C6 05F5 A645 1FD3 BD3E
Oct 17 2006
Wolfgang Draxinger wrote:Lars Ivar Igesund wrote:If that happens, you have a problem with Samba, not D. -- Lars Ivar Igesund blog at http://larsivi.net DSource & #D: larsiviYes, the doc there is a convention, not spec. It just suggest that you should use lower case names, since that might reduce problems when moving files between systems.Then you got another problem, e.g. if somebody works on a Windows box and has mounted his stuff from a Linux/Samba Server. Depending on the configuration of Samba the files might end up all uppercase, in which case a compiler farm running under Linux are unable to locate the files, since Samba made them uppercase. I think that D, aiming to cancel out ambiguouties, should make it a definitive specification, that all files and module names are treated case insensitive. Wolfgang Draxinger
Oct 17 2006
Lars Ivar Igesund wrote:If that happens, you have a problem with Samba, not D.The bahaviour can be freely configured and some people (not me) prefer it that way. Wolfgang Draxinger -- E-Mail address works, Jabber: hexarith jabber.org, ICQ: 134682867 GPG key FP: 2FC8 319E C7D7 1ADC 0408 65C6 05F5 A645 1FD3 BD3E
Oct 18 2006
Wolfgang Draxinger wrote:Lars Ivar Igesund wrote:Then they shouldn't do cross platform development ;) -- Lars Ivar Igesund blog at http://larsivi.net DSource & #D: larsiviIf that happens, you have a problem with Samba, not D.The bahaviour can be freely configured and some people (not me) prefer it that way. Wolfgang Draxinger
Oct 18 2006
Lars Ivar Igesund wrote:Then they shouldn't do cross platform development ;)There are a few example programs which don't compile under Linux (and other case sensitive OS of course). For example ctrace: Since the filenames in the archive are all lowercase, but within ctrace.d a module ctParams is referenced it doesn't compile, except you rename ctparams.d to ctParams.d or change the module name and references to it to ctparams. Wolfgang Draxinger -- E-Mail address works, Jabber: hexarith jabber.org, ICQ: 134682867 GPG key FP: 2FC8 319E C7D7 1ADC 0408 65C6 05F5 A645 1FD3 BD3E
Oct 18 2006
Wolfgang Draxinger wrote:Lars Ivar Igesund wrote:I do think this should be changed, but it's in the frontend, not GDC. The appropriate place to talk about this would be digitalmars.D. - Gregor RichardsThen they shouldn't do cross platform development ;)There are a few example programs which don't compile under Linux (and other case sensitive OS of course). For example ctrace: Since the filenames in the archive are all lowercase, but within ctrace.d a module ctParams is referenced it doesn't compile, except you rename ctparams.d to ctParams.d or change the module name and references to it to ctparams. Wolfgang Draxinger
Oct 18 2006