unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* bug#39854: Not correct line and column numbers associated to function.
@ 2020-03-01 12:17 Stefan Israelsson Tampe
  2020-03-05 21:54 ` Ludovic Courtès
  0 siblings, 1 reply; 2+ messages in thread
From: Stefan Israelsson Tampe @ 2020-03-01 12:17 UTC (permalink / raw)
  To: 39854

[-- Attachment #1: Type: text/plain, Size: 1320 bytes --]

Consider this source file: test.scm:

(use-modules (language python def) (system syntax internal) ((oop dict)
#:select (slask-it)))

(define-syntax m
  (lambda (x)
    (syntax-case x ()
      ((_ n m y)
       (let* ((xx (syntax-expression x))
              (yy (pk 'yy (source-properties xx)))
              (zz (syntax-expression #'y))
              (ww (pk 'ww (source-properties zz)))
              (nn (assoc 'line   yy))
              (mm (assoc 'column yy))
              (ii (assoc 'line   ww))
              (jj (assoc 'column ww)))
         (if nn (set-cdr! nn (syntax->datum #'n)))
         (if mm (set-cdr! mm (syntax->datum #'m)))
         (if ii (set-cdr! ii (syntax->datum #'n)))
         (if jj (set-cdr! jj (syntax->datum #'m)))
         (set-source-properties! xx (pk yy))
         (set-source-properties! zz (pk ww))
         #'y)))))

(define f (slask-it (lambda () 1)))

;;-----------------------------------------------------

Never mind the m macro and concentrate on the last define of f. slask-it is
an imported function
and equivalent to (lambda (x) x) (just to make sure to annynmous f. loading
this source file an d quiring f lead to

cheme@(guile-user)> f
$10 = #<procedure 7fa3c1db93b0 at test.scm:4:2 ()>

Why 4:2? the line number is much higher and column number as well.

Regards
Stefan

[-- Attachment #2: Type: text/html, Size: 1994 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* bug#39854: Not correct line and column numbers associated to function.
  2020-03-01 12:17 bug#39854: Not correct line and column numbers associated to function Stefan Israelsson Tampe
@ 2020-03-05 21:54 ` Ludovic Courtès
  0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2020-03-05 21:54 UTC (permalink / raw)
  To: Stefan Israelsson Tampe; +Cc: 39854

Hi,

Stefan Israelsson Tampe <stefan.itampe@gmail.com> skribis:

> Consider this source file: test.scm:
>
> (use-modules (language python def) (system syntax internal) ((oop dict)
> #:select (slask-it)))
>
> (define-syntax m
>   (lambda (x)
>     (syntax-case x ()
>       ((_ n m y)
>        (let* ((xx (syntax-expression x))
>               (yy (pk 'yy (source-properties xx)))
>               (zz (syntax-expression #'y))
>               (ww (pk 'ww (source-properties zz)))
>               (nn (assoc 'line   yy))
>               (mm (assoc 'column yy))
>               (ii (assoc 'line   ww))
>               (jj (assoc 'column ww)))
>          (if nn (set-cdr! nn (syntax->datum #'n)))
>          (if mm (set-cdr! mm (syntax->datum #'m)))
>          (if ii (set-cdr! ii (syntax->datum #'n)))
>          (if jj (set-cdr! jj (syntax->datum #'m)))
>          (set-source-properties! xx (pk yy))
>          (set-source-properties! zz (pk ww))
>          #'y)))))
>
> (define f (slask-it (lambda () 1)))
>
> ;;-----------------------------------------------------
>
> Never mind the m macro and concentrate on the last define of f. slask-it is
> an imported function
> and equivalent to (lambda (x) x) (just to make sure to annynmous f. loading
> this source file an d quiring f lead to
>
> cheme@(guile-user)> f
> $10 = #<procedure 7fa3c1db93b0 at test.scm:4:2 ()>
>
> Why 4:2? the line number is much higher and column number as well.

I wonder if it relates to <https://issues.guix.gnu.org/issue/38388> and
<https://lists.gnu.org/archive/html/guile-user/2020-03/msg00006.html>.

Ludo’.





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-03-05 21:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-01 12:17 bug#39854: Not correct line and column numbers associated to function Stefan Israelsson Tampe
2020-03-05 21:54 ` Ludovic Courtès

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).