[Omake] Case-insensitivity and cons-hashing.

Aleksey Nogin nogin at metaprl.org
Wed May 2 09:15:38 PDT 2007


On 01.05.2007 07:52, Jason Hickey wrote:

> Another minor issue is that somehow we get 
> src/shell/Omake_shell_parse.ml (capitalized).

I have not tried reproducing this, but I think I know what is going on 
and it should have bothered me before. The combination of the 
cons-hashing (at least the way we do it now) with case-insensitivity 
(especially in presence of case-preservation) results in a completely 
nondeterministic behavior related to the cases. Basically, whatever case 
combination is created first, wins.

E.g. on Windows:

C:\>osh --version
OMake 0.9.8.2 (release 1):
         build [Mon Apr 30 12:11:56 2007]
         on danglewin

Default library directory : c:\Program Files\OMake\lib\omake
Using library directory   : C:\Program Files\OMake\lib\omake\
         (as specified by the 
HKEY_LOCAL_MACHINE\SOFTWARE\MetaPRL\OMake\OMAKELIB registry key)

C:\>osh
% X = $"$(file Foo)"
- : <string
        c:\\Foo : File>
        : String
%
C:\>osh
% X = $"$(file fOO)"
- : <string
        c:\\fOO : File>
        : String
% X = $"$(file Foo)"
- : <string
        c:\\fOO : File>
        : String

I think we have to rework the cons-hashing so that the case is taken 
into account... I'll probably hold off with 0.9.8.2 until this is solved...

Aleksey


More information about the OMake-Devel mailing list