mirror of git://gcc.gnu.org/git/gcc.git
strings-1.m: Move to...
gcc/testsuite: * gcc/testsuite/objc.dg/strings-1.m: Move to... * gcc/testsuite/objc.dg/strings/strings-1.m: ... here. Update paths. * gcc/testsuite/objc.dg/strings-2.m: Move to ... * gcc/testsuite/objc.dg/strings/strings-2.m ... here, provide a constructor and class reference for NeXT runtime. Update paths. * gcc/testsuite/obj-c++.dg/strings-1.m: Move to... * gcc/testsuite/obj-c++.dg/strings/strings-1.m: ... here. Update paths. * gcc/testsuite/obj-c++.dg/strings-2.m: Move to ... * gcc/testsuite/obj-c__.dg/strings/strings-2.m ... here, provide a constructor and class reference for NeXT runtime. Update paths. From-SVN: r167253
This commit is contained in:
parent
e12bcbf492
commit
98c1c7cd1e
|
@ -1,3 +1,16 @@
|
|||
2010-11-29 Iain Sandoe <iains@gcc.gnu.org>
|
||||
|
||||
* gcc/testsuite/objc.dg/strings-1.m: Move to...
|
||||
* gcc/testsuite/objc.dg/strings/strings-1.m: ... here. Update paths.
|
||||
* gcc/testsuite/objc.dg/strings-2.m: Move to ...
|
||||
* gcc/testsuite/objc.dg/strings/strings-2.m ... here, provide a
|
||||
constructor and class reference for NeXT runtime. Update paths.
|
||||
* gcc/testsuite/obj-c++.dg/strings-1.m: Move to...
|
||||
* gcc/testsuite/obj-c++.dg/strings/strings-1.m: ... here. Update paths.
|
||||
* gcc/testsuite/obj-c++.dg/strings-2.m: Move to ...
|
||||
* gcc/testsuite/obj-c__.dg/strings/strings-2.m ... here, provide a
|
||||
constructor and class reference for NeXT runtime. Update paths.
|
||||
|
||||
2010-11-29 Dodji Seketeli <dodji@redhat.com>
|
||||
|
||||
PR c++/42260
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/* Contributed by Nicola Pero <nicola.pero@meta-innovation.com>, November 2010. */
|
||||
/* { dg-do compile } */
|
||||
|
||||
#include "../objc-obj-c++-shared/Object1.h"
|
||||
#include "../objc-obj-c++-shared/next-mapping.h"
|
||||
#include "../../objc-obj-c++-shared/Object1.h"
|
||||
#include "../../objc-obj-c++-shared/next-mapping.h"
|
||||
#ifndef __NEXT_RUNTIME__
|
||||
#include <objc/NXConstStr.h>
|
||||
#endif
|
|
@ -5,10 +5,10 @@
|
|||
/* { dg-options "-fconstant-string-class=MyTestString" } */
|
||||
/* { dg-options "-mno-constant-cfstrings -fconstant-string-class=MyTestString" { target *-*-darwin* } } */
|
||||
|
||||
/* { dg-additional-sources "../objc-obj-c++-shared/Object1.mm" } */
|
||||
/* { dg-additional-sources "../../objc-obj-c++-shared/Object1.mm" } */
|
||||
|
||||
#include "../objc-obj-c++-shared/Object1.h"
|
||||
#include "../objc-obj-c++-shared/next-mapping.h"
|
||||
#include "../../objc-obj-c++-shared/Object1.h"
|
||||
#include "../../objc-obj-c++-shared/next-mapping.h"
|
||||
|
||||
#include <stdlib.h> /* For abort() */
|
||||
|
||||
|
@ -31,6 +31,14 @@
|
|||
}
|
||||
@end
|
||||
|
||||
#ifdef __NEXT_RUNTIME__
|
||||
# ifdef NEXT_OBJC_USE_NEW_INTERFACE
|
||||
struct fudge_objc_class _MyTestStringClassReference;
|
||||
# else
|
||||
struct objc_class _MyTestStringClassReference;
|
||||
# endif
|
||||
#endif
|
||||
|
||||
int main (void)
|
||||
{
|
||||
MyTestString *test_valid1 = @"test";
|
||||
|
@ -49,3 +57,15 @@ int main (void)
|
|||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef __NEXT_RUNTIME__
|
||||
/* The MyTestString metaclass will need to be initialized before we can
|
||||
send messages to strings. */
|
||||
|
||||
void testsuite_mytest_string_init (void) __attribute__((constructor));
|
||||
void testsuite_mytest_string_init (void) {
|
||||
memcpy (&_MyTestStringClassReference,
|
||||
objc_getClass ("MyTestString"),
|
||||
sizeof (_MyTestStringClassReference));
|
||||
}
|
||||
#endif
|
|
@ -1,8 +1,8 @@
|
|||
/* Contributed by Nicola Pero <nicola.pero@meta-innovation.com>, November 2010. */
|
||||
/* { dg-do compile } */
|
||||
|
||||
#include "../objc-obj-c++-shared/Object1.h"
|
||||
#include "../objc-obj-c++-shared/next-mapping.h"
|
||||
#include "../../objc-obj-c++-shared/Object1.h"
|
||||
#include "../../objc-obj-c++-shared/next-mapping.h"
|
||||
#ifndef __NEXT_RUNTIME__
|
||||
#include <objc/NXConstStr.h>
|
||||
#endif
|
|
@ -5,10 +5,10 @@
|
|||
/* { dg-options "-fconstant-string-class=MyTestString" } */
|
||||
/* { dg-options "-mno-constant-cfstrings -fconstant-string-class=MyTestString" { target *-*-darwin* } } */
|
||||
|
||||
/* { dg-additional-sources "../objc-obj-c++-shared/Object1.m" } */
|
||||
/* { dg-additional-sources "../../objc-obj-c++-shared/Object1.m" } */
|
||||
|
||||
#include "../objc-obj-c++-shared/Object1.h"
|
||||
#include "../objc-obj-c++-shared/next-mapping.h"
|
||||
#include "../../objc-obj-c++-shared/Object1.h"
|
||||
#include "../../objc-obj-c++-shared/next-mapping.h"
|
||||
|
||||
#include <stdlib.h> /* For abort() */
|
||||
|
||||
|
@ -31,6 +31,14 @@
|
|||
}
|
||||
@end
|
||||
|
||||
#ifdef __NEXT_RUNTIME__
|
||||
# ifdef NEXT_OBJC_USE_NEW_INTERFACE
|
||||
struct fudge_objc_class _MyTestStringClassReference;
|
||||
# else
|
||||
struct objc_class _MyTestStringClassReference;
|
||||
# endif
|
||||
#endif
|
||||
|
||||
int main (void)
|
||||
{
|
||||
MyTestString *test_valid1 = @"test";
|
||||
|
@ -49,3 +57,15 @@ int main (void)
|
|||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef __NEXT_RUNTIME__
|
||||
/* The MyTestString metaclass will need to be initialized before we can
|
||||
send messages to strings. */
|
||||
|
||||
void testsuite_mytest_string_init (void) __attribute__((constructor));
|
||||
void testsuite_mytest_string_init (void) {
|
||||
memcpy (&_MyTestStringClassReference,
|
||||
objc_getClass ("MyTestString"),
|
||||
sizeof (_MyTestStringClassReference));
|
||||
}
|
||||
#endif
|
Loading…
Reference in New Issue