Custom Query (1630 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (88 - 90 of 1630)

Ticket Resolution Summary Owner Reporter
#1690 fixed Specializations using "and" (and/or other macros) don't work properly sjamaan
Description

Reported by Kon Lovett:

cat >matches-prob-test.scm <<'HERE'
(import scheme)
(import (chicken irregex))

(define (uses-predicate str)
  (and
    (string? str)
    (irregex-match? '(: "foo") str) ) )

(print "uses-predicate: " (uses-predicate ""))
HERE

csc ./matches-prob-test.scm
./matches-prob-test
#uses-predicate: #f                                                                                             

csc -specialize ./matches-prob-test.scm
./matches-prob-test
#Error: unbound variable: and                                                                                   

Interestingly, this goes all the way back to 4.9.0; in 4.8.0.5 this program (with suitable changes for C4) works as expected with -specialize.

It looks like the and that's being complained about is the one in the irregex-match? specialization in types.db. This makes sense if the specialization is the last thing that happens, there's no more macro expansion step and stuff will break.

#1689 fixed Segfault when calling the procedure bound in a named let with wrong number of arguments Mario Domenech Goulart
Description

Just stumbled upon the case below. Compiling the code with -O0 leads to a binary that crashes. The compiler reports an error with optimization levels greater than 0.

$ cat segfault.scm
(let loop ((lst '((1 1))) (x 0))
  (if (null? lst)
      x
      (if (< (caar lst) x)
          x
          (loop (cdr lst)))))

$ ~/local/chicken-5.2.0/bin/csc -O0 segfault.scm && ./segfault

Error: segmentation violation

        Call history:

        segfault.scm:2: scheme#null?
        segfault.scm:4: scheme#caar
        segfault.scm:4: scheme#<
        segfault.scm:6: scheme#cdr
        segfault.scm:6: loop            <--

Interesting that this only happens with -O0:

$ ~/local/chicken-5.2.0/bin/csc -O0 segfault.scm ; echo $?
0

$ ~/local/chicken-5.2.0/bin/csc -O1 segfault.scm ; echo $?

Error: known procedure called recursively with wrong number of arguments: `loop9'

Error: shell command terminated with non-zero exit status 256: '/home/mario/local/chicken-5.2.0/bin/chicken' 'segfault.scm' -output-file 'segfault.c' -optimize-level 1
1

$ ~/local/chicken-5.2.0/bin/csc -O2 segfault.scm ; echo $?

Error: known procedure called recursively with wrong number of arguments: `loop9'

Error: shell command terminated with non-zero exit status 256: '/home/mario/local/chicken-5.2.0/bin/chicken' 'segfault.scm' -output-file 'segfault.c' -optimize-level 2
1

$ ~/local/chicken-5.2.0/bin/csc -O3 segfault.scm ; echo $?

Error: known procedure called recursively with wrong number of arguments: `loop9'

Error: shell command terminated with non-zero exit status 256: '/home/mario/local/chicken-5.2.0/bin/chicken' 'segfault.scm' -output-file 'segfault.c' -optimize-level 3
1

$ ~/local/chicken-5.2.0/bin/csc -O4 segfault.scm ; echo $?

Error: known procedure called recursively with wrong number of arguments: `loop9'

Error: shell command terminated with non-zero exit status 256: '/home/mario/local/chicken-5.2.0/bin/chicken' 'segfault.scm' -output-file 'segfault.c' -optimize-level 4
1

$ ~/local/chicken-5.2.0/bin/csc -O5 segfault.scm ; echo $?

Error: known procedure called recursively with wrong number of arguments: `loop9'

Error: shell command terminated with non-zero exit status 256: '/home/mario/local/chicken-5.2.0/bin/chicken' 'segfault.scm' -output-file 'segfault.c' -optimize-level 5
1

Info on the environment:

$ ~/local/chicken-5.2.0/bin/csc -version
CHICKEN
(c) 2008-2020, The CHICKEN Team
(c) 2000-2007, Felix L. Winkelmann
Version 5.2.0 (rev 317468e4)
linux-unix-gnu-x86-64 [ 64bit dload ptables ]

$ ~/local/chicken-5.2.0/bin/csc -cc-name
'gcc'

$ gcc --version
gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#1688 fixed Restore -l option for chicken-install sjamaan
Description

I just noticed that chicken-install has no way to choose the location from which to fetch eggs, like chicken-install had in the CHICKEN 4 series. This can be quite useful sometimes, like when a certain mirror is not up to date.

Note: See TracQuery for help on using queries.