bugKawa - Bugs: bug #45526, kawa-2.0: compilation is broken on...

 
 

bug #45526: kawa-2.0: compilation is broken on Windows (proposing a fix)

Submitter:  None
Submitted:  Fri 10 Jul 2015 10:48:38 PM UTC
   
 
Category:  None Severity:  3 - Normal
Item Group:  Problem building Kawa Status:  Works For Me
Privacy:  Public Assigned to:  None
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Wed 15 Jul 2015 05:08:12 PM UTC, comment #1: 

This was already fixed in SVN.

Per Bothner <bothner>
Group administrator
Fri 10 Jul 2015 10:48:38 PM UTC, original submission:  

I am compiling Kawa with ant on Windows 7 getting an error. Not sure if it is OS-specific, but it seems so. I get this error:

    [kawac] (compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\kawa\string-cursors.scm to kawa.lib.kawa.string$Mncursors)
    [kawac] (compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\kawa\quaternions.scm to kawa.lib.kawa.quaternions)
    [kawac] (compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\kawa\hashtable.scm to kawa.lib.kawa.hashtable)
    [kawac] (compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\kawa\regex.scm to kawa.lib.kawa.regex)
    [kawac] (compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\rnrs\hashtables.scm to kawa.lib.rnrs.hashtables)
    [kawac] (compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\rnrs\lists.scm to kawa.lib.rnrs.lists)
    [kawac] internal error while compiling D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\rnrs\lists.scm
    [kawac] java.lang.IllegalArgumentException: Illegal character in opaque part at index 2: D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\rnrs/../lists.scm
    [kawac]     at java.net.URI.create(URI.java:852)
    [kawac]     at java.net.URI.resolve(URI.java:1036)
    [kawac]     at gnu.kawa.io.FilePath.resolve(FilePath.java:270)
    [kawac]     at kawa.standard.ImportFromLibrary.handleImport(ImportFromLibrary.java:375)
    [kawac]     at kawa.standard.require.scanForDefinitions(require.java:177)
    [kawac]     at kawa.lang.Syntax.scanForm(Syntax.java:57)
    [kawac]     at kawa.lang.Translator.scanForm(Translator.java:1508)
    [kawac]     at gnu.kawa.lispexpr.LispLanguage.parse(LispLanguage.java:82)
    [kawac]     at gnu.expr.Compilation.process(Compilation.java:1935)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:290)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:272)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:272)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:272)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:272)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:272)
    [kawac]     at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:272)
    [kawac]     at kawa.repl.compileFiles(repl.java:824)
    [kawac]     at kawa.repl.processArgs(repl.java:444)
    [kawac]     at kawa.repl.main(repl.java:871)
    [kawac] Caused by: java.net.URISyntaxException: Illegal character in opaque part at index 2: D:\storage\distribs\programming\lisp\kawa-2.0-2\kawa-2.0\kawa\lib\rnrs/../lists.scm
    [kawac]     at java.net.URI$Parser.fail(URI.java:2848)
    [kawac]     at java.net.URI$Parser.checkChars(URI.java:3021)
    [kawac]     at java.net.URI$Parser.parse(URI.java:3058)
    [kawac]     at java.net.URI.<init>(URI.java:588)
    [kawac]     at java.net.URI.create(URI.java:850)
    [kawac]     ... 18 more

Apparently, the path won't do for the URI creation. I have patched ImportFromLibrary.java, on line 376 insert:

...
pathStr = pathStr.replaceAll("\\\\", "/");
pathStr = java.nio.file.Paths.get(new java.io.File(pathStr).toURI()).normalize().toString();
pathStr = "file://" + pathStr.replaceAll("\\\\", "/");
Path path = currentRoot.resolve(pathStr);
...

I have attached the changed source file.

This makes Kawa compilable for me. Maybe it is a bug and needs a fix?

If you need more info, you can contact me on -email is unavailable- but I believe that's pretty very much it.

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #34422:  ImportFromLibrary.java added by None (23KiB - java/*)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by bothner (Posted a comment)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2015-07-15 bothner StatusNone Works For Me
        Open/ClosedOpen Closed
    2015-07-10 None Attached File- Added ImportFromLibrary.java, #34422

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code