@Mirq, post #1
#elif defined(__GNUC__) && defined(AMIGA) #define __REG__(r, p) p __asm(#r)Plan jest taki, żeby zmienić to następująco:
#elif defined(__GNUC__) && defined(AMIGA) && !defined(__cplusplus) #define __REG__(r, p) p __asm(#r)To powoduje, że przy kompilacji w C++ warunek nie jest spełniony i makro __REG__ nie zostaje zdefiniowane. To co prawda nie rozwiązuje problemu tych "półprywatnych" funkcji, w momencie gdy ktoś ich musi użyć, ale kompilacja się nie wywala...
@Hexmage960, post #3
Nie wiem czy może to być tutaj pomocneAkurat tu nie. W pliku "clib/compiler-specific.h" po szeregu #if i #elif następuje ostateczne #else, a w nim
#define __REG__(r, p) pco skutkuje zdefiniowaniem funkcji, o których pisałem, bez określenia w jaki sposób są przekazywane argumenty. To zazwyczaj skończy się źle, ale tylko dla programów wywołujących te funkcje, a mają one bardzo specyficzne zastosowanie. Wszystkie programy po prostu używające graphics.library skompilują się i zadziałają bez przeszkód.