I don't know if this is the correct area to report this but Parrot currently is 
not building on Win32 using MSVC 2008.  I haven't built it in a while but it 
used to build quite easily.

I tracked the problem down to method _generate_guard_macro_name in 
compilers/opsc/src/Ops/Emitter.pm. The line:

my @path := split('/', $filename);

...does not work as expected since the $filename passed in has backslashes as 
directory separators and not forward slashes.  I know that this is a "Win32" 
thing but it is usually handled in other places.  I hacked 
_generate_guard_macro_name so that the backslash is treated like the forward 
slash and are replaced with underscores in the guard name.  Without this hack 
the build chokes on the backslashes in the guard name of the header files 
produced by ops2c for the dynoplibs like obscure_ops.h.  With the hack, the 
build completes and running "nmake test" produces no errors.

BTW, googling "Parrot report defect" does not bring up anything useful :(; what 
is the correct process for reporting defects?   If more information is 
required, I'd be happy to report it.

Mark Solinski
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to