Subject: Compiler mis-identifies source location of erroneous parenthesis pairs

From: Mike Gran <[email-masked]>
Date: Sat, 7 Jan 2017 15:51:44 +0000 (UTC)

In guile 2.0.13, both the compiler and the interpreter
fail to identify the source location of errors of the following
form.  It instead reports the errors as occurring in boot-9.scm.
(unknown-func unknown-symbol () #t)
GUILD COMPILE ERROR
;;; WARNING: compilation of /home/mike/projects/bug1.scm failed: 
;;; ERROR: Syntax error: 
;;; unknown location: unexpected syntax in form () 
ice-9/boot-9.scm:703:29: In procedure map: 
ice-9/boot-9.scm:703:29: Syntax error: 
unknown location: unexpected syntax in form () 

INTERPRETER ERROR
ice-9/boot-9.scm:703:29: In procedure map: 
ice-9/boot-9.scm:703:29: Syntax error: 
unknown location: unexpected syntax in form () 

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue. 
scheme@(guile-user) [1]> ,bt 
4 (primitive-load "/home/mike/projects/bug1.scm") 
In ice-9/eval.scm: 
505:12  3 (#<procedure 55fe958796c0 at ice-9/eval.scm:499:4 ...> #) 
In ice-9/psyntax.scm: 
1116:54  2 (expand-top-sequence ((unknownfunc unknownsymbol ...)) ...) 
1346:11  1 (#<procedure 55fe95f48910 (e0 e1)> unknownfunc (# # #t)) 
In ice-9/boot-9.scm: 
703:29  0 (map #<procedure 55fe95f87040 at ice-9/psyntax.scm...> #) 

Thanks,
Mike