unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: Ian Hulin <ian@hulin.org.uk>
To: guile-devel@gnu.org
Subject: Re: Backward compatibility status
Date: Sat, 20 Mar 2010 22:06:28 +0000	[thread overview]
Message-ID: <ho3gss$nno$1@dough.gmane.org> (raw)
In-Reply-To: <87y6hu8oe5.fsf@gnu.org>

Hi Ludo,

On 14/03/10 23:38, Ludovic � wrote:
> Hi Patrick,
>
> Patrick McCarty<pnorcks@gmail.com>  writes:
>
>> 2010/3/6 Ludovic Courtès<ludo@gnu.org>:
>
> [...]
>
>>> | Name                                  | Cause                                           |
>>> |---------------------------------------+-------------------------------------------------|
>>> | lilypond-2.13.9                       | `scm_internal_hash_fold'&  `scm_t_hash_fold_fn' |
>>
>> Is this something that should be fixed in LilyPond?
>
> I think so, yes (especially since ‘scm_internal_hash_fold’ was intended
> to be sort-of internal.)
>
>> For reference, I'm fairly certain this build failure was introduced
>> with Guile commit a07010bf1828704edd9a40cadb0eaf820b8f3638.
>
> Yes, that’s the one.
>
>> If I add the typedefs to the appropriate LilyPond header file and use
>> them, the problem goes away, but I don't know if there are unexpected
>> side effects of this.
>
> I think you want a fix that retains compatibility with 1.8.  How about
> having a ‘configure’ test checking for this typedef?
>
>> I am unable to test any further, because there are more build failures
>> down the pipeline.  :-)
>
> Heh.  Let us know what other Guile-related failures you stumble upon!
>

I patched the Lilypond header files and code calling them to get round 
the above problem, but then hit this one:

Code like this which dynamically declares procedures,and works fine in 
V1.8.7 but barfs with V1.9.9

;;; This is OK
(define-public PLATFORM
   (string->symbol
    (string-downcase
     (car (string-tokenize (utsname:sysname (uname)))))))

;;; This is OK


;;; This fails, but works in 1.8.7
(case PLATFORM
   ((windows)
    (define native-getcwd
      getcwd)

    (define (slashify x)
      (if (string-index x #\\)
	 x
	 (string-regexp-substitute
	  "//*" "/"
	  (string-regexp-substitute "\\\\" "/" x))))

    (define-public (ly-getcwd)
      (slashify (native-getcwd))))

   (else
    (define-public ly-getcwd
      getcwd)))






  reply	other threads:[~2010-03-20 22:06 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-07  0:29 Backward compatibility status Ludovic Courtès
2010-03-14 23:12 ` Patrick McCarty
2010-03-14 23:38   ` Ludovic Courtès
2010-03-20 22:06     ` Ian Hulin [this message]
2010-03-20 22:35       ` Ludovic Courtès
2010-04-02 18:21     ` Patrick McCarty
2010-04-05 17:06       ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='ho3gss$nno$1@dough.gmane.org' \
    --to=ian@hulin.org.uk \
    --cc=guile-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).