This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Patch testsuite/objc/objc++] some objc/objcxx testsuite TLC re. PRs 55654,55656,55657


Hi,

The NeXT Objective C runtime and its interfaces have been evolving - and, in particular, interfaces deprecated at Darwin9 have now been removed from recent Darwin/OSX implementations.

The following patch:
(a) exchanges the use of Object with NSObject where appropriate, for Darwin platforms.
(b) avoids the use of <Foundation/Foundation.h>***

tested on x86_64-unknown-linux-gnu, darwin 9 (ppc/x86) 10 and 12 (I don't currently have a copy of Darwin11, but believe bases should be adequately covered).

A few of the fails reported in the PRs enumerated are real regressions; this patch only addresses resolution of issues related to interface changes in the libraries.

OK for trunk?
OK for open branches? (this was reported against 4.8)

cheers
Iain

*** Foundation/Foundation.h for Darwin >= 11 (OSX 10.7) now depends on blocks support in the compiler, which represents a significant challenge.

-------

gcc/testsuite/

2013-07-14  Iain Sandoe  <iain@codesourcery.com>

	PR target/55654
	PR target/55656
	PR target/55657
	* obj-c++.dg/cxx-ivars-3.mm: Use NSObject instead of Object.
	* obj-c++.dg/strings/const-cfstring-5.mm: Likewise.
	* obj-c++.dg/torture/strings/const-str-10.mm: Likewise.
	* obj-c++.dg/torture/strings/const-str-9.mm: Likewise.
	* objc.dg/image-info.m: Likewise.
	* objc.dg/symtab-1.m: Likewise.
	* objc.dg/torture/strings/const-str-10.m: Likewise.
	* objc.dg/torture/strings/const-str-11.m: Likewise.
	* objc.dg/torture/strings/const-str-9.m: Likewise.
	* objc.dg/zero-link-1.m: Likewise.
	* objc.dg/zero-link-2.m: Likewise.
	* objc.dg/no-extra-load.m: Avoid Foundation.h.
	* objc.dg/objc-foreach-4.m: Likewise.
	* objc.dg/objc-foreach-5.m: Likewise.
	* obj-c++.dg/proto-lossage-7.mm: Use NSObject instead of Object (for Darwin).
	* obj-c++.dg/strings/const-str-12.mm: Likewise.
	* obj-c++.dg/syntax-error-1.mm: Likewise.
	* objc.dg/method-6.m: Likewise.
	* objc.dg/pr23214.m: Likewise.
	* objc.dg/proto-lossage-7.m: Likewise.
	* objc.dg/strings/const-str-12b.m: Likewise.
	* objc.dg/zero-link-3.m: Likewise.
	* obj-c++.dg/method-12.mm: Skip on Darwin versions without 'Object'.
	* objc.dg/encode-7-next-64bit.m: Use NSObject instead of Object, adjust headers,
	interfaces and encoded types to reflect current system versions.  Add FIXME and
	outputs from current system compiler for reference.

Attachment: fix-removal-of-object-diff.txt
Description: Text document




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]