pandora-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Pandora] compile errors


From: Simon Patarin
Subject: Re: [Pandora] compile errors
Date: Wed, 26 May 2004 23:18:36 +0200 (CEST)

Hi,

> I'm getting errors like this:
>
>
>
> guile_pandora_proc.cc: In function `scm_unused_struct*
>
>    pandora_set_stack_name_x(scm_unused_struct*, scm_unused_struct*)':
>
> guile_pandora_proc.cc:47: ISO C++ forbids comparison between pointer and
>
>    integer

Those errors are due to API incompatibilities between versions 1.4 and 1.6
of Guile. To fix this you should do the following.

In the file guile_pandora_types.h go to line 86 (near the end) and
replace:

#define SCM_POPTIONP(x) (SCM_NIMP(x) && (SCM_CAR(x) == option_tag))
#define SCM_PCOMPP(x)   (SCM_NIMP(x) && (SCM_CAR(x) == comp_tag))
#define SCM_PSTACKP(x)  (SCM_NIMP(x) && (SCM_CAR(x) == stack_tag))
#define SCM_PPIPEP(x)   (SCM_NIMP(x) && (SCM_CAR(x) == packet_pipe_tag))

by

#ifndef SCM_SMOB_PREDICATE
#define SCM_SMOB_PREDICATE(tag, smob) \
  (SCM_NIMP((smob)) && (SCM_CAR((smob)) == (tag)))
#endif

#define SCM_POPTIONP(x) SCM_SMOB_PREDICATE(option_tag,      (x))
#define SCM_PCOMPP(x)   SCM_SMOB_PREDICATE(comp_tag,        (x))
#define SCM_PSTACKP(x)  SCM_SMOB_PREDICATE(stack_tag,       (x))
#define SCM_PPIPEP(x)   SCM_SMOB_PREDICATE(packet_pipe_tag, (x))

Once you've done that, all those errors are going to be transformed into
warnings, but those do not really matter (tell me if you want to get rid
of them too, i have another fix for that...). As soon as I find the time
to do it, I'll release a snapshot of my current CVS tree which contains
this fix and several others (less critical).

Simon




reply via email to

[Prev in Thread] Current Thread [Next in Thread]