guile-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Fix continuation problems on IA64.


From: Neil Jerram
Subject: Re: [PATCH] Fix continuation problems on IA64.
Date: Mon, 12 May 2008 22:02:39 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux)

address@hidden (Ludovic Courtès) writes:

> I'm not a Windows expert, but I think the `SCM_API' is needed in some
> cases, for instance for internal `scm_i_' functions that may be called
> indirectly by user programs, e.g., through macros or inline functions.

Yes, that's correct.  (Sadly :-) I have to use Windows for my work...)

> So I suppose `SCM_API' is not needed Windows-wise for `scm_ia64_longjmp'
> since it's only meant to be called from within libguile.

Yes, correct.

I believe that means we're agreed on all points now, so I'll commit
shortly.

>> FWIW, my preferred position would be that something is only a
>> supported API if it is documented in the manual.  It should then
>> follow that SCM_API can only be used on something that is documented
>> in the manual (including anything that is needed for the expansions of
>> documented macros).
>
> Agreed.
>
> I've been thinking about leveraging GCC's `visibility' attribute to
> enforce this.

That sounds like an excellent idea.  IIUC, that would have an effect
equivalent to the Windows expansion of SCM_API (__declspec(dllextn) or
whatever), and it would solve the problem (or rather inelegance) where
you have an "internal" function but which is used by more than one of
libguile's source files, and so can't be static.

Regards,
      Neil





reply via email to

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