160484Sobrien#include "EXTERN.h" 260484Sobrien#include "perl.h" 3218822Sdim#include "XSUB.h" 460484Sobrien 5218822Sdim/* Old perls (pre 5.8.9 or so) did not have PERL_UNUSED_ARG in XSUB.h. 660484Sobrien * This is normally covered by ppport.h. */ 760484Sobrien#ifndef PERL_UNUSED_ARG 860484Sobrien# if defined(lint) && defined(S_SPLINT_S) /* www.splint.org */ 960484Sobrien# include <note.h> 1060484Sobrien# define PERL_UNUSED_ARG(x) NOTE(ARGUNUSED(x)) 1160484Sobrien# else 1260484Sobrien# define PERL_UNUSED_ARG(x) ((void)x) 1360484Sobrien# endif 1460484Sobrien#endif 1560484Sobrien#ifndef PERL_UNUSED_VAR 1660484Sobrien# define PERL_UNUSED_VAR(x) ((void)x) 1760484Sobrien#endif 1860484Sobrien 19218822Sdimint xsusage_one() { return 1; } 2060484Sobrienint xsusage_two() { return 2; } 2160484Sobrienint xsusage_three() { return 3; } 2260484Sobrienint xsusage_four() { return 4; } 2360484Sobrienint xsusage_five(int i) { PERL_UNUSED_ARG(i); return 5; } 2460484Sobrienint xsusage_six(int i) { PERL_UNUSED_ARG(i); return 6; } 2560484Sobrien 2660484SobrienMODULE = XSUsage PACKAGE = XSUsage PREFIX = xsusage_ 2760484Sobrien 2860484SobrienPROTOTYPES: DISABLE 29130561Sobrien 30130561Sobrienint 3160484Sobrienxsusage_one() 3260484Sobrien 3360484Sobrienint 3460484Sobrienxsusage_two() 3560484Sobrien ALIAS: 3660484Sobrien two_x = 1 3760484Sobrien FOO::two = 2 3860484Sobrien INIT: 3960484Sobrien PERL_UNUSED_VAR(ix); 4060484Sobrien 4160484Sobrienint 4260484Sobrieninterface_v_i() 4360484Sobrien INTERFACE: 4460484Sobrien xsusage_three 4560484Sobrien 4660484Sobrienint 4760484Sobrienxsusage_four(...) 4860484Sobrien 4960484Sobrienint 5060484Sobrienxsusage_five(int i, ...) 5160484Sobrien 5260484Sobrienint 5360484Sobrienxsusage_six(int i = 0) 5460484Sobrien