Thread overview
[Issue 19654] [REG master] cannot have final methods in objc interfaces
Feb 06, 2019
Jacob Carlborg
Feb 21, 2019
RazvanN
Feb 21, 2019
Jacob Carlborg
Feb 21, 2019
Jacob Carlborg
February 06, 2019
https://issues.dlang.org/show_bug.cgi?id=19654

--- Comment #1 from Jacob Carlborg <doob@me.com> ---
The error message is:

Error: function `main.Bar.foo` function body only allowed in `final` functions in interface `Bar`

--
February 21, 2019
https://issues.dlang.org/show_bug.cgi?id=19654

RazvanN <razvan.nitu1305@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |razvan.nitu1305@gmail.com

--- Comment #2 from RazvanN <razvan.nitu1305@gmail.com> ---
Running your example on run.dlang.io I get:

Up to      2.064  : Failure with output:
-----
onlineapp.d(1): Error: valid linkage identifiers are D, C, C++, Pascal,
Windows, System
onlineapp.d(1): Error: found '-' when expecting ')'
onlineapp.d(1): Error: no identifier for declarator C
onlineapp.d(1): Error: semicolon expected, not ')'
onlineapp.d(1): Error: Declaration expected, not ')'
-----

2.065.0 to 2.066.0: Failure with output:
-----
onlineapp.d(1): Error: valid linkage identifiers are D, C, C++, Pascal,
Windows, System
onlineapp.d(1): Error: found '-' when expecting ')'
onlineapp.d(1): Error: no identifier for declarator C
onlineapp.d(1): Error: Declaration expected, not ')'
-----

2.067.1 to 2.068.2: Failure with output:
-----
onlineapp.d(1): Error: valid linkage identifiers are D, C, C++, Pascal,
Windows, System
onlineapp.d(1): Error: found '-' when expecting ')'
onlineapp.d(1): Error: no identifier for declarator C
onlineapp.d(1): Error: declaration expected, not ')'
-----

2.069.2 to 2.071.2: Failure with output: onlineapp.d(2): Error: interface
onlineapp.Bar Objective-C interfaces not supported
2.072.2 to 2.074.1: Failure with output:
-----
onlineapp.d(2): Error: interface onlineapp.Bar Objective-C interfaces not
supported
onlineapp.d(4): Error: undefined identifier 'selector'
-----

2.075.1 to 2.078.1: Failure with output:
-----
onlineapp.d(2): Error: interface onlineapp.Bar Objective-C interfaces not
supported
onlineapp.d(4): Error: undefined identifier `selector`
-----

Since      2.079.1: Failure with output:
-----
onlineapp.d(2): Error: interface `onlineapp.Bar` Objective-C interfaces not
supported
onlineapp.d(4): Error: undefined identifier `selector`
-----

How is this a regression?

--
February 21, 2019
https://issues.dlang.org/show_bug.cgi?id=19654

--- Comment #3 from Jacob Carlborg <doob@me.com> ---
(In reply to RazvanN from comment #2)

> How is this a regression?

A few reason why you're not finding the problem

* Objective-C support was added in 2.069.0 [1], looking earlier is no point
* The issue title starts with "[REG master]", i.e. the regression was in
master, looking in any release is no point
* Objective-C support is only available on macOS, testing on run.dlang.io will
not work
* This regression is already fixed [2]. Most have been during the time when the
dlang-bot didn't work.

[1] https://dlang.org/changelog/2.069.0.html#objective-c-support [2] https://github.com/dlang/dmd/pull/9329

--
February 21, 2019
https://issues.dlang.org/show_bug.cgi?id=19654

Jacob Carlborg <doob@me.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #4 from Jacob Carlborg <doob@me.com> ---
Fixed in https://github.com/dlang/dmd/commit/59bfdb2aa690dd7f079fe781f3f0bccd36849afc.

--