diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/objc-obj-c++-shared/objc-test-suite-types.h')
-rw-r--r-- | gcc-4.9/gcc/testsuite/objc-obj-c++-shared/objc-test-suite-types.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/objc-obj-c++-shared/objc-test-suite-types.h b/gcc-4.9/gcc/testsuite/objc-obj-c++-shared/objc-test-suite-types.h new file mode 100644 index 000000000..34981edfc --- /dev/null +++ b/gcc-4.9/gcc/testsuite/objc-obj-c++-shared/objc-test-suite-types.h @@ -0,0 +1,62 @@ +/* Define test-suite types to minimize conditional test-case source. + Copyright (C) 2011 Free Software Foundation, Inc. + Contributed by Iain Sandoe + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3, or (at your option) +any later version. + +GCC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +<http://www.gnu.org/licenses/>. */ + +#ifndef _OBJC_TEST_SUITE_TYPES_H_ +#define _OBJC_TEST_SUITE_TYPES_H_ + +#ifndef __NEXT_RUNTIME__ + +/* dummy const string class ref. */ +typedef void * TNS_STRING_REF_T; + +#else /* NeXT */ + +#include "next-abi.h" +#ifdef NEXT_OBJC_USE_NEW_INTERFACE +#include <objc/runtime.h> +#else +#include <objc/objc-runtime.h> +#endif + +/* Force a definition of nil that is compatible with GNU runtime. */ +#undef nil +#define nil ((id)0) + +#ifndef NULL +#define NULL 0 +#endif + +/* Where there are equivalent interfaces between APIs we substitute + a macro or typedef. */ + +#ifdef __OBJC2__ +/* Const String Class ref. */ +typedef Class TNS_STRING_REF_T; +#else +/* Const String Class ref. */ +/* We need objc_class - but we don't need endless reminders that it's deprecated. */ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +typedef struct objc_class TNS_STRING_REF_T; +#pragma GCC diagnostic pop +#endif + +#endif /*__NEXT_RUNTIME__ */ +#endif /* _OBJC_TEST_SUITE_TYPES_H_ */ |