objective-c - add instancetype.
authorIain Sandoe <iain@sandoe.co.uk>
Sat, 18 May 2019 08:27:24 +0000 (08:27 +0000)
committerIain Sandoe <iains@gcc.gnu.org>
Sat, 18 May 2019 08:27:24 +0000 (08:27 +0000)
commit5219955ccd44eaca6fd12b39acafc24c04602e97
tree3377ebdc1bfccee1b67415ffb232730595a1937b
parentc141668376b558228712f643ec643c94765c5e6c
objective-c - add instancetype.

The instancetype has been added as a typedef alias to id
in order to allow diagnosis of cases where a class is used
or returned where an instance is expected.

This adds the typedef, and tests that we can parse it.
It doesn't alter the diagnostics yet.

gcc/objc/

2019-05-18  Iain Sandoe  <iain@sandoe.co.uk>

* objc/objc-act.h (OCTI_INSTANCE_TYPE, OCTI_INSTANCETYPE_NAME): New.
(objc_global_trees): Add instance type and name.
(INSTANCE_TYPEDEF_NAME): New.
* objc/objc-act.c (synth_module_prologue): Build decls for
objc_instancetype_type and objc_instancetype_name.

gcc/testsuite/

2019-05-18  Iain Sandoe  <iain@sandoe.co.uk>

* objc.dg/instancetype-0.m: New.

From-SVN: r271370
gcc/objc/ChangeLog
gcc/objc/objc-act.c
gcc/objc/objc-act.h
gcc/testsuite/ChangeLog
gcc/testsuite/objc.dg/instancetype-0.m [new file with mode: 0644]