summaryrefslogtreecommitdiffstats
path: root/gcc/testsuite/objc.dg/encode-7-next.m
Commit message (Collapse)AuthorAgeFilesLines
* In gcc/testsuite/:nicola2011-06-061-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2011-06-06 Nicola Pero <nicola.pero@meta-innovation.com> Updated all testcases in the ObjC/ObjC++ testsuites to use the Modern Objective-C runtime API. * objc/execute/next_mapping.h: Removed. * objc-obj-c++-shared/next-mapping.h: Removed. * objc-obj-c++-shared/Object1.h: Removed. * objc-obj-c++-shared/Object1.m: Removed. * objc-obj-c++-shared/Object1.mm: Removed. * objc-obj-c++-shared/Object1-implementation.h: Removed. * objc-obj-c++-shared/Protocol1.h: Removed. * objc-obj-c++-shared/objc-test-suite-types.h: Removed definition of ProtoBool, IVAR_T and METHOD. * objc-obj-c++-shared/runtime.h: New. * objc-obj-c++-shared/TestsuiteObject.h: New. * objc-obj-c++-shared/TestsuiteObject.m: New. * objc/compile/trivial.m: Use TestsuiteObject instead of Object. * objc/execute/IMP.m: Include ../../objc-obj-c++-shared/runtime.h. Use the Modern Objective-C runtime API. ([TestClass -next:]): Made it a class method. * objc/execute/_cmd.m: Include ../../objc-obj-c++-shared/runtime.h. Use the Modern Objective-C runtime API. ([TestClass +initialize]): Include this method also with the GNU runtime. * objc/execute/accessing_ivars.m: Use TestsuiteObject instead of Object. ([-setValue:]): Return void. * objc/execute/bf-common.h: Do not include objc/objc-encoding.h with the GNU runtime. Include ../../objc-obj-c++-shared/runtime.h. Do not define objc_get_class for the NeXT runtime. Use the existing print_ivars() and compare_structures() implementations for the old NeXT runtime. Added new implementations for the Modern GNU and NeXT runtimes. Enable the testcase (and hence all the bf-* ones) for __OBJC2__ as well. (main): Use objc_getClass(). Use return instead of exit. * objc/execute/bycopy-1.m: Include objc/objc.h instead of ../../objc-obj-c++-shared/Protocol1.h. (main): Use return instead of exit(). * objc/execute/bycopy-2.m: Include objc/objc.h instead of ../../objc-obj-c++-shared/Protocol1.h. Use TestsuiteObject instead of Object. (main): Use return instead of exit(). * objc/execute/bycopy-3.m: Updated includes. Use TestsuiteObject instead of Object. Removed prototype for exit(). (main): Use return instead of exit(). Use the Modern Objective-C runtime API. * objc/execute/cascading-1.m: Use TestsuiteObject instead of Object. * objc/execute/class-tests-1.h: Include ../../objc-obj-c++-shared/runtime.h. Use the Modern Objective-C runtime API. (test_class_with_superclass): Do not call [Object class]. There is no need to with the current libobjc. * objc/execute/class-tests-2.h: Include ../../objc-obj-c++-shared/runtime.h. Use the Modern Objective-C runtime API. * objc/execute/class-1.m: Do not include <objc/objc-api.h> and ../../objc-obj-c++-shared/next-mapping.h. * objc/execute/class-2.m: Likewise. * objc/execute/class-3.m: Likewise. * objc/execute/class-4.m: Do not include <objc/objc-api.h> and ../../objc-obj-c++-shared/next-mapping.h. ([RootClass +initialize]): Include this method also with the GNU runtime. (main): Use the Modern Objective-C runtime API. * objc/execute/class-5.m: Likewise. * objc/execute/class-6.m: Likewise. * objc/execute/class-7.m: Likewise. * objc/execute/class-8.m: Likewise. * objc/execute/class-9.m: Likewise. * objc/execute/class-10.m: Likewise. * objc/execute/class-11.m: Likewise. * objc/execute/class-12.m: Likewise. * objc/execute/class-13.m: Likewise. * objc/execute/class-14.m: Likewise. * objc/execute/class_self-1.m ([TestClass +initialize]): Include this method also with the GNU runtime. * objc/execute/class_self-2.m: ([TestClass +initialize], [ClassA +initialize]): Include this method also with the GNU runtime. * objc/execute/compatibility_alias.m: Use TestsuiteObject instead of Object. * objc/execute/encode-1.m: Likewise. * objc/execute/enumeration-1.m: Likewise. * objc/execute/enumeration-2.m: Likewise. * objc/execute/exceptions/catchall-1.m: Likewise. * objc/execute/exceptions/finally-1.m: Likewise. * objc/execute/exceptions/foward-1.m: Likewise. * objc/execute/exceptions/local-variables-1.m: Likewise. * objc/execute/exceptions/throw-nil.m: Likewise. * objc/execute/exceptions/trivial.m: Likewise. * objc/execute/exceptions/handler-1.m: Use TestsuiteObject instead of Object. Include objc/runtime.h instead of objc/objc-api.h. * objc/execute/exceptions/matcher-1.m: Likewise. * objc/execute/formal_protocol-1.m: Use TestsuiteObject instead of Object. * objc/execute/formal_protocol-2.m: Likewise. * objc/execute/formal_protocol-3.m: Likewise. * objc/execute/formal_protocol-4.m: Likewise. * objc/execute/formal_protocol-5.m: Include ../../objc-obj-c++-shared/runtime.h. (main): Always use protocol_getName(). * objc/execute/formal_protocol-6.m: Likewise. * objc/execute/formal_protocol-7.m: Use TestsuiteObject instead of Object. Include <objc/Protocol.h> instead of ../../objc-obj-c++-shared/Protocol1.h. * objc/execute/function-message-1.m: Use TestsuiteObject intead of Object. * objc/execute/informal_protocol.m: Likewise. * objc/execute/load-3.m: Likewise. * objc/execute/many_args_method.m ([TestClass +initialize]): Include this method with the GNU runtime as well. * objc/execute/nested-3.m ([Test +initialize]): Likewise. * objc/execute/nested-func-1.m: Use TestsuiteObject instead of Object. * objc/execute/nil_method-1.m: Likewise. * objc/execute/no_clash.m: Likewise. * objc/execute/np-1.m: Do not include ../../objc-obj-c++-shared/Protocol1.h. (main): Use return instead of exit(). * objc/execute/np-2.m: Do not include ../../objc-obj-c++-shared/Protocol1.h. ([MyObject +initialize]): Include this method also with the GNU runtime. (main): Use return instead of exit(). * objc/execute/object_is_class.m: Include ../../objc-obj-c++-shared/runtime.h. Use TestsuiteObject instead of Object. (main): Use the Modern Objective-C runtime API. * objc/execute/object_is_meta_class.m: Likewise. * objc/execute/private.m: Use TestsuiteObject instead of Object. * objc/execute/protocol-isEqual-1.m: Include objc/Protocol.h instead of ../objc-obj-c++-shared/Protocol1.h. Include ../../objc-obj-c++-shared/runtime.h. (main): Use the Modern Objective-C runtime API. * objc/execute/protocol-isEqual-2.m: Likewise. * objc/execute/protocol-isEqual-3.m: Likewise. * objc/execute/protocol-isEqual-4.m: Likewise. * objc/execute/redefining_self.m ([TestClass +initialize]): Include this method with the GNU runtime as well. * objc/execute/root_methods.m: Include ../../objc-obj-c++-shared/runtime.h. ([RootClass +initialize]): Include this method with the GNU runtime as well. (main): Use the Modern Objective-C runtime API. * objc/execute/selector-1.m: Include ../../objc-obj-c++-shared/runtime.h. Use TestsuiteObject instead of Object. (main): Use the Modern Objective-C runtime API. * objc/execute/static-1.m ([Test +initialize]): Include this method with the GNU runtime as well. * objc/execute/static-2.m: Likewise. * objc/execute/trivial.m: Use TestsuiteObject instead of Object. * objc/execute/va_method.m: Do not include objc/objc-api.h. ([MathClass +initialize]): Include this method with the GNU runtime as well. * objc.dg/attributes/categ-attribute-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/attributes/categ-attribute-1.mm: Likewise. * objc.dg/attributes/categ-attributes-2.m: Likewise. * obj-c++.dg/attributes/categ-attributes-2.mm: Likewise. * objc.dg/attributes/method-attribute-1.m: Likewise. * obj-c++.dg/attributes/method-attribute-1.mm: Likewise. * objc.dg/attributes/method-attribute-2.m: Likewise. * obj-c++.dg/attributes/method-attribute-2.mm: Likewise. * objc.dg/attributes/method-attribute-3.m: Likewise. * obj-c++.dg/attributes/method-attribute-3.mm: Likewise. * obj-c++.dg/basic.mm: Use TestsuiteObject instead of Object. * objc.dg/bitfield-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/bitfield-1.mm: Likewise. * obj-c++.dg/bitfield-2.mm: Likewise * objc.dg/bitfield-3.m: Likewise. * obj-c++.dg/bitfield-4.mm: Likewise. * objc.dg/bitfield-5.m: Likewise * objc.dg/call-super-1.m: Likewise. * objc.dg/call-super-2.m: Use TestsuiteObject instead of Object. Use objc_getClass() instead of objc_get_class(), but for the GNU runtime redefine objc_getClass as objc_get_class. Include ../objc-obj-c++-shared/runtime.h. * objc.dg/call-super-3.m: Use TestsuiteObject instead of Object. * objc.dg/category-1.m: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. * objc.dg/class-protocol-1.m: Include ../objc-obj-c++-shared/runtime.h instead of objc/objc-api.h. * obj-c++.dg/class-protocol-1.mm: Likewise. * objc.dg/comp-types-8.m: Use TestsuiteObject instead of Object. * objc.dg/comp-types-10.m: Likewise. * objc.dg/comp-types-11.m: Likewise. * objc.dg/comp-types-12.m: Likewise. * obj-c++.dg/comp-types-9.mm: Likewise. * obj-c++.dg/comp-types-11.mm: Likewise. * obj-c++.dg/comp-types-12.mm: Likewise. * obj-c++.dg/comp-types-13.mm: Likewise. * obj-c++.dg/cxx-ivars-1.mm: Likewise. * obj-c++.dg/cxx-ivars-2.mm: Likewise. * obj-c++.dg/cxx-scope-1.mm: Likewise. * obj-c++.dg/cxx-scope-2.mm: Likewise. * objc.dg/defs.m: Use TestsuiteObject instead of Object. * objc.dg/desig-init-1.m: Likewise. * obj-c++.dg/defs.mm: Likewise. * objc.dg/exceptions-2.m: Likewise. * obj-c++.dg/except-1.mm: Likewise. * obj-c++.dg/exceptions-2.mm: Likewise. * objc.dg/encode-2.m: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. * objc.dg/encode-3.m: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. Do not include ../objc-obj-c++-shared/objc-test-suite-types.h. Define ProtoBool. * objc.dg/encode-4.m: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API except when using an older NeXT runtime. * objc.dg/encode-5.m: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. * objc.dg/encode-7.m: Include objc/runtime.h instead of objc/encoding.h. * objc.dg/encode-7-next.m: Use TestsuiteObject instead of Object. * objc.dg/encode-7-next-64bit.m: Updated include. * objc.dg/encode-8.m: Include objc/runtime.h instead of objc/encoding.h. * obj-c++.dg/encode-4.mm: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. * obj-c++.dg/encode-5.mm: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. Include objc/Protocol.h instead of ../objc-obj-c++-shared/Protocol1.h. * obj-c++.dg/encode-6.mm: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API except when using an older NeXT runtime. * obj-c++.dg/encode-7.mm: Use TestsuiteObject instead of Object. Use the Modern Objective-C runtime API. * objc.dg/fix-and-continue-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/fix-and-continue-2.mm: Likewise. * objc.dg/fix-and-continue-2.m: Likewise. * objc.dg/foreach-1.m: Likewise. * objc.dg/foreach-2.m: Likewise. * objc.dg/foreach-3.m: Likewise. * objc.dg/foreach-4.m: Likewise. * objc.dg/foreach-5.m: Likewise. * objc.dg/foreach-6.m: Likewise. * objc.dg/foreach-7.m: Likewise. * objc.dg/func-ptr-1.m: Use TestsuiteObject instead of Object. * objc.dg/func-ptr-2.m: Likewise. * objc.dg/fsf-package-0.m: Use TestsuiteObject instead of Object. Do not include objc/objc-api.h. * obj-c++.dg/fsf-package-0.mm: Likewise. * objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c (switchfiles): Include objc/runtime.h instead of objc/encoding.h. * objc.dg/gnu-runtime-1.m: Updated to use TestsuiteObject instead of Object. * obj-c++.dg/gnu-runtime-1.mm: Likewise. * objc.dg/gnu-runtime-3.m: Likewise. * obj-c++.dg/gnu-runtime-3.mm: Likewise. * objc.dg/headers.m: Include objc/runtime.h instead of objc/encoding.h for the GNU runtime. Include objc/objc-api.h only for the NeXT runtime. * objc.dg/isa-field-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/isa-field-1.mm: Likewise. * obj-c++.dg/ivar-list-semi.mm: Likewise. * objc.dg/layout-1.m: Likewise. * objc.dg/layout-2.m: Likewise. * objc.dg/local-decl-2.m: Likewise. * objc.dg/lookup-1.m: Use TestsuiteObject instead of Object. ([Container +elementForView:]): Use class_conformsToProtocol(). * obj-c++.dg/lookup-2.mm: Likewise. * obj-c++.dg/layout-1.mm: Use TestsuiteObject instead of Object. * obj-c++.dg/local-decl-1.mm: Likewise. * objc.dg/method-3.m: Likewise. * objc.dg/method-4.m: Likewise. * objc.dg/method-6.m: Include objc/Protocol.h instead of ../objc-obj-c++-shared/Protocol1.h. * objc.dg/method-7.m: Use TestsuiteObject instead of Object. * objc.dg/method-9.m: Likewise. * objc.dg/method-10.m: Likewise. * objc.dg/method-13.m ([Root +initialize]): Include this method also for the GNU runtime. (main): Use objc_getClass() also for the GNU runtime. * objc.dg/method-15.m: Use TestsuiteObject instead of Object. * objc.dg/method-17.m: Likewise. * objc.dg/method-19.m: Likewise. * objc.dg/method-20b.m: Likewise. * obj-c++.dg/method-2.mm: Likewise. * obj-c++.dg/method-6.mm: Likewise. * obj-c++.dg/method-10.mm: Likewise. * obj-c++.dg/method-11.mm: Likewise. * obj-c++.dg/method-12.mm: Include objc/Protocol.h instead of ../objc-obj-c++-shared/Protocol1.h. * obj-c++.dg/method-13.mm: Use TestsuiteObject instead of Object. * obj-c++.dg/method-15.mm: Likewise. * obj-c++.dg/method-17.mm: Likewise. * obj-c++.dg/method-19.mm: Updated includes. ([Root +initialize]): Include this method also for the GNU runtime. (main): Use objc_getClass() also for the GNU runtime. * obj-c++.dg/method-21.mm: Use TestsuiteObject instead of Object. * obj-c++.dg/method-22.mm: Likewise. * obj-c++.dg/method-23.mm: Likewise. * obj-c++.dg/no-extra-load.mm: Likewise. * objc.dg/objc-fast-4.m: Likewise. * objc.dg/objc-gc-4.m: Likewise. * obj-c++.dg/objc-gc-3.mm: Likewise. * objc.dg/pr18255.m: Include objc/runtime.h. (main): Use protocol_getMethodDescription() instead of [Protocol -descriptionForInstanceMethod]. * objc.dg/pr23214.m ([Object(TS_CAT) -class]): Renamed to test. Made it available with all runtimes. (main): Call -test instead of -class. * objc.dg/pr45878.m ([Object -isEqual:]): Renamed to testIsEqual, and put into a category. * objc.dg/proto-lossage-2.m: Use TestsuiteObject instead of Object. Include objc/objc.h. * obj-c++.dg/proto-lossage-2.mm: Likewise. * objc.dg/proto-lossage-3.m: Updated includes. (MyClass): New. (main): Use protocol_getMethodDescription() instead of [Protocol -descriptionForInstanceMethod] and [Protocol -descriptionForClassMethod]. * obj-c++.dg/proto-lossage-3.mm: Likewise. * objc.dg/proto-qual-1.m: Updated includes. Use the Modern Objective-C runtime API. * obj-c++.dg/proto-qual-1.mm: Likewise. * objc.dg/property/property-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/property/property-1.mm: Likewise. * obj-c++.dg/qual-types-1.mm: Likewise. * objc.dg/selector-2.m: Include objc/objc.h instead of ../objc-obj-c++-shared/Object1.h. * obj-c++.dg/selector-2.mm: Likewise. * obj-c++.dg/selector-5.mm: Likewise. * obj-c++.dg/selector-6.mm: Likewise. * objc.dg/set-not-used-1.m: Use TestsuiteObject instead of Object. Do not include objc/objc-api.h. * obj-c++.dg/set-not-used-1.mm: Likewise. * objc.dg/sizeof-1.m: Use TestsuiteObject instead of Object. * objc.dg/stret-1.m: Likewise. * objc.dg/stret-2.m: Likewise. * obj-c++.dg/super-class-2.mm: Likewise. * objc.dg/super-class-3.m: Likewise. * objc.dg/super-class-4.m: Likewise. * objc.dg/sync-2.m: Likewise. * obj-c++.dg/sync-2.mm: Likewise. * objc.dg/sync-1.m: Include objc/objc.h instead of ../objc-obj-c++-shared/Object1.h. * objc.dg/special/unclaimed-category-1.h (TestClass): Always use 'Class' as the type of 'isa'. * objc.dg/special/unclaimed-category-1.m: Use the Modern Objective-C runtime API. ([TestClass +initialize]): Include this method with the GNU runtime as well. * objc.dg/strings/strings-1.m: Updated includes. * obj-c++.dg/strings/strings-1.mm: Likewise. * obj-c++.dg/strings/const-str-12.mm: Updated to be identical to objc.dg/strings/const-str-12b.m. * obj-c++.dg/template-1.mm: Use TestsuiteObject intead of Object. * obj-c++.dg/template-3.mm: Likewise. * obj-c++.dg/template-4.mm: Likewise. * objc.dg/threedotthree-abi-1.m: Updated includes. Use Modern Objective-C runtime API. * obj-c++.dg/threedotthree-abi-1.mm: Likewise. * objc.dg/try-catch-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/try-catch-1.mm: Likewise. * obj-c++.dg/try-catch-2.mm: Likewise. * objc.dg/try-catch-3.m: Likewise. * obj-c++.dg/try-catch-3.mm: Likewise. * objc.dg/try-catch-6.m: Likewise. * objc.dg/try-catch-7.m: Likewise. * obj-c++.dg/try-catch-7.mm: Likewise. * obj-c++.dg/try-catch-8.mm: Likewise. * obj-c++.dg/try-catch-9.mm: Likewise. * objc.dg/try-catch-10.m: Likewise. * obj-c++.dg/try-catch-11.mm: Likewise. * objc.dg/typedef-alias-1.m: Use TestsuiteObject instead of Object. Include objc/objc.h. * obj-c++.dg/typedef-alias-1.mm: Likewise. * objc.dg/type-size-2.m: Use the Modern Objective-C runtime API. * objc.dg/torture/forward-1.m: Use TestsuiteObject intead of Object. Use Modern Objective-C runtime API. Do not use performv::. * objc.dg/torture/trivial.m: Use TestsuiteObject intead of Object. * obj-c++.dg/torture/trivial.mm: Likewise. * objc.dg/torture/strings/const-str-10.m: Include objc/Object.h instead of ../objc-obj-c++-shared/Object1.h. Include ../objc-obj-c++-shared/runtime.h. * obj-c++.dg/torture/strings/const-str-10.mm: Likewise. * objc.dg/torture/strings/const-str-11.m: Likewise. * obj-c++.dg/torture/strings/const-str-11.mm: Likewise. * objc.dg/torture/strings/const-str-9.m: Likewise. * obj-c++.dg/torture/strings/const-str-9.mm: Likewise. * objc.dg/torture/strings/const-str-7.m: Use TestsuiteObject instead of Object. Only add _FooClassReference if __NEXT_RUNTIME__. * obj-c++.dg/torture/strings/const-str-7.mm: Likewise. * objc.dg/torture/strings/const-str-8.m: Likewise. * obj-c++.dg/torture/strings/const-str-8.mm: Likewise. * obj-c++.dg/torture/strings/string1.mm: Updated includes and additional sources. * objc.dg/torture/tls/thr-init-3.m: Use TestsuiteObject instead of Object. * obj-c++.dg/torture/tls/thr-init-3.mm: Likewise. * objc.dg/va-meth-1.m: Use TestsuiteObject instead of Object. * obj-c++.dg/va-meth-1.mm: Likewise. * objc.dg/zero-link-1.m: Include objc/Object.h instead of ../objc-obj-c++-shared/Object1.h. * objc.dg/zero-link-3.m: Likewise. 2011-06-06 Nicola Pero <nicola.pero@meta-innovation.com> * obj-c++.dg/try-catch-2.mm: Fixed unterminated comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174727 138bc75d-0d04-0410-961f-82ee72b054a4
* * objc-obj-c++-shared/next-mapping.h: Ensure a GNU-compatible nil isiains2010-11-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | defined. * objc.dg/property/fsf-property-basic.m: XFAIL m64 NeXT run. * objc.dg/property/fsf-property-named-ivar.m: Likewise. * objc.dg/property/property-1.m: Likewise. * objc.dg/property/at-property-6.m: Likewise. * objc.dg/property/at-property-7.m: Likewise. * objc.dg/property/dotsyntax-1.m: Likewise. * objc.dg/property/at-property-8.m: Likewise. * objc.dg/property/dotsyntax-2.m: Likewise. * objc.dg/property/at-property-9.m: Likewise. * objc.dg/property/synthesize-2.m: Likewise. * objc.dg/property/at-property-10.m: Likewise. * objc.dg/property/at-property-11.m: Likewise. * objc.dg/property/at-property-12.m: Likewise. * objc.dg/property/at-property-13.m: Likewise. * objc.dg/property/fsf-property-method-access.m: Likewise. * objc.dg/torture/strings/const-cfstring-1.m: Cater for bogus Darwin10 linker warning. * objc.dg/encode-7-next.m: Use next-mapping.h, ignore deprecation warnings. * objc.dg/encode-7-next-64bit.m: Use next-mapping.h, ignore deprecation warnings. Use Object1 implemenation. * objc.dg/demangle-1.m: Provide +initialize. XFAIL m64 NeXT run. * objc/execute/forward-1.m: Move to objc.dg/torture and reduce scope to m32 NeXT. * objc/execute/forward-1.x: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166321 138bc75d-0d04-0410-961f-82ee72b054a4
* PR objc/45842iains2010-09-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * objc.dg/threedotthree-abi-1.m: Only apply at m32. * objc.dg/const-str-3.m: Correct header for memcpy. * objc.dg/const-str-7.m: Likewise. * objc.dg/method-20b.m: Provide an implementation of Object. Adjust XFAIL for m64 NeXT runtime. * objc.dg/const-str-12b.m: Use mapped data types Darwin >= 9. * objc.dg/encode-3.m: Correct line ordering, provide header for sprintf. * objc.dg/encode-7-next.m: Only run for 32bit. * objc.dg/encode-7-next-64bit.m: Only run for 64bit. * objc.dg/type-size-2.m: Provide an implementation of Object. Ajust headers. * obj-c++.dg/const-str-7.mm: Correct header for memcpy. * obj-c++.dg/const-str-12.mm: Use mapped data types Darwin >= 9. * obj-c++.dg/method-23.mm: Provide an implementation of Object. Adjust XFAIL for m64 NeXT runtime. * obj-c++.dg/method-22.mm: Likewise. * obj-c++.dg/threedotthree-abi-1.mm: Only apply at m32. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164747 138bc75d-0d04-0410-961f-82ee72b054a4
* In gcc/:nicola2010-09-271-0/+267
2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> * doc/objc.texi (Type encoding): Added the new 'long double' (D) code. Added byref, which was missing in the list of codes. Explain that enumeration values are encoded as the integer type that the compiler uses to store them. Explain and make examples of how 'const' interacts with pointers, and the complication of the encoding of 'const char *'. (Legacy type encoding): New subsection, explaining that GCC emits incorrect type encodings for the NeXT runtime for compatibility reasons. (@@encode): New subsection, explaining @encode and particularly that protocol qualifiers are not recognized inside an @encode() expression. (Method signatures): New subsection, explaining how method signatures are encoded. In gcc/objc/: 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> PR objc/45763 PR objc/25450 PR objc/25464 * objc-act.c: Improved comments for encoding functions. (encode_aggregate_within): For the GNU runtime, rewritten some obsfuscated code to clarify the various cases. (encode_aggregate): Function removed. (encode_array): Generate an error if asked to encode an incomplete array as part of generating instance variables. Else, when encoding an incomplete array inside a structure, encode it as an array of zero size. (encode_pointer): For the GNU runtime, fixed encoding 'BOOL *' as '^c' instead of '*'. (encode_gnu_bitfield): Encode enumerated types exactly in the same type as integer types instead of using a hardcoded 'i'. If asked to encode a non-integer type as a bitfield, do not abort compilation immediately; instead generate an error, then skip the type. (encode_type): Use a 'switch' instead of a sequence of 'if's. Added a 'default' clause that gets executed if the type can not be matched, and that encodes it as '?' (unknown) and produces a warning. For the GNU runtime, encode enumerated types exactly in the same way as integer types instead of using a hardcoded 'i'. Encode long double as 'D'. Encode 128-bit integers as 'T' or 't'. Encode C++ reference types as pointers. Call encode_vector to encode vectors. (encode_vector): New function. 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> Merge from 'apple/trunk' branch on FSF servers. I modified the changes to be used only when compiling for the NeXT runtime. 2005-10-10 Fariborz Jahanian <fjahanian@apple.com> Radar 4301047 * objc-act.c (encode_type): Remove the hack. 2005-07-20 Ziemowit Laski <zlaski@apple.com> Radar 4136935 * objc-act.c (pointee_is_readonly): New function. (encode_pointer, encode_aggregate_within, encode_type): Attempt to emulate GCC 3.3 when generating type encodings. In gcc/testsuite/: 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> PR objc/25464 * objc.dg/type-size-3.m: New test. 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> PR objc/45763 * objc.dg/encode-1.m: Execute the test with the GNU runtime as well. 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> PR objc/25450 * objc.dg/encode-3.m: Updated for fix of encoding of enums. * objc.dg/type-size-2.m: Same change. * obj-c++.dg/encode-5.mm: Same change. 2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com> Merge from 'apple/trunk' branch on FSF servers. The original Changelogs are below. * objc.dg/encode-6.m: Execute the test only with the GNU runtime. * objc.dg/encode-6-next.m: New file (from encode-6.m in the branch). * objc.dg/encode-7-next.m: New file (from encode-7.m in the branch). * objc.dg/encode-7-next-64bit.m: New file (from encode-7-64bit.m in the branch). * objc.dg/proto-qual-1.m: Test the 3.3 ABI on NeXT (from proto-qual-1.m in the branch) and the normal ABI on GNU. * objc.dg/threedotthree-abi-1.m: New file (from the branch). Run the test only with the NeXT runtime. * obj-c++/encode-1.mm: Execute the test only with the GNU runtime. * obj-c++/encode-1-next.mm: New file (from encode-1.mm in the branch). * obj-c++.dg/threedotthree-abi-1.mm: New file (from the branch). Run the test only with the NeXT runtime. 2006-03-30 Fariborz Jahanian <fjahanian@apple.com> Radar 4492973 * objc.dg/encode-7-64bit.m: New. * objc.dg/encode-7.m: Skip if -m64. 2005-10-19 Fariborz Jahanian <fjahanian@apple.com> Radar 4301047 * objc.dg/proto-qual-1.m: Fix test to match 3.3 ABI * obj-c++.dg/threedotthree-abi-1.mm: New * objc.dg/threedotthree-abi-1.m: New 2005-07-20 Ziemowit Laski <zlaski@apple.com> Radar 4136935 * obj-c++.dg/encode-1.mm: Tweak encodings to match fix. * objc.dg/encode-6.m: Likewise. * objc.dg/encode-7.m: New test case. In libobjc/: 2010-09-26 Nicola Pero <nicola.pero@meta-innovation.com> * encoding.c (objc_sizeof_type): Added support for vector type and for double long types. (objc_alignof_type): Same change. (objc_skip_typespec): Same change. * objc/encoding.h (_C_GCINVISIBLE): Use '|' for _C_GCINVISIBLE instead of '!' since '!' is already used for _C_VECTOR. * objc/objc-api.h (_C_LNG_DBL): Added. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164659 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud