X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tests%2Fuffi-c-test.c;h=20326640c0ed499144c18b3175cdf86184695a21;hb=refs%2Ftags%2Fv2.1.0;hp=ee1ab3a3f6fd6ddd542c3b65a823223285dc2a54;hpb=7c6a7667f14741d85625f4091e931f1d5ed42159;p=uffi.git diff --git a/tests/uffi-c-test.c b/tests/uffi-c-test.c index ee1ab3a..2032664 100644 --- a/tests/uffi-c-test.c +++ b/tests/uffi-c-test.c @@ -1,24 +1,18 @@ /*************************************************************************** * FILE IDENTIFICATION - * + * * Name: c-test-fns.c * Purpose: Test functions in C for UFFI library * Programer: Kevin M. Rosenberg * Date Started: Mar 2002 * - * CVS Id: $Id$ - * - * This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg + * This file, part of UFFI, is Copyright (c) 2002-2010 by Kevin M. Rosenberg * - * UFFI users are granted the rights to distribute and use this software - * as governed by the terms of the Lisp Lesser GNU Public License - * (http://opensource.franz.com/preamble.html), also known as the LLGPL. - * These variables are correct for GCC * you'll need to modify these for other compilers ***************************************************************************/ -#ifdef WIN32 +#if defined(WIN32)||defined(WIN64) #include BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll, @@ -27,11 +21,11 @@ BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll, { return 1; } - + #define DLLEXPORT __declspec(dllexport) #else -#define DLLEXPORT +#define DLLEXPORT #endif #include @@ -58,11 +52,11 @@ cs_count_upper (char* psz) if (psz) { while (*psz) { if (isupper (*psz)) - ++count; + ++count; ++psz; } return count; - } else + } else return -1; } @@ -89,7 +83,7 @@ cs_make_random (int size, char* buffer) buffer[i] = 'A' + (rand() % 26); } - + /* Test of input/output vector */ DLLEXPORT void @@ -100,7 +94,7 @@ half_double_vector (int size, double* vec) vec[i] /= 2.; } - + DLLEXPORT void * @@ -119,6 +113,27 @@ cast_test_float () return y; } +DLLEXPORT +long +return_long_negative_one () +{ + return -1; +} + +DLLEXPORT +int +return_int_negative_one () +{ + return -1; +} + +DLLEXPORT +short +return_short_negative_one () +{ + return -1; +} + DLLEXPORT int fvar_addend = 3; typedef struct { @@ -138,4 +153,4 @@ double fvar_struct_double () { return fvar_struct.d; } - +