Source: puredata
Version: 0.46.6-1

There's this code in m_pd.h:

/* in ARM 64 a varargs prototype generates a different function call sequence
from a fixed one, so in that special case we maek a more restrictive
definition for t_gotfn.  This will break some code in the "chaos" package
in Pd extended.  (that code will run incorrectly anyhow so why not catch it
at compile time anyhow.) */
#ifdef __aarch64__
typedef void (*t_gotfn)(void *x);
#else
typedef void (*t_gotfn)(void *x, ...);
#endif

It prevents pd-chaos from building:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783824

I think the change to t_gotfn only makes sense on iOS, not on Linux.
The two systems use different calling conventions:

https://developer.apple.com/library/ios/documentation/Xcode/Conceptual/iPhoneOSABIReference/Articles/ARM64FunctionCallingConventions.html

Perhaps the "#ifdef __aarch64__" should be something like
"#if defined(__APPLE__) && defined(__aarch64__)"?


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to