Bug 41370 - Objective Sharpie creates method twice
Summary: Objective Sharpie creates method twice
Status: NEW
Alias: None
Product: Objective Sharpie
Classification: Desktop
Component: General ()
Version: 3.1
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: ---
Assignee: Aaron Bockover [MSFT]
Depends on:
Reported: 2016-05-29 17:36 UTC by Benjamin Krämer
Modified: 2016-06-12 14:00 UTC (History)
1 user (show)

Is this bug a regression?: ---
Last known good build:

Header for Florio SDK (78.27 KB, application/zip)
2016-05-29 17:36 UTC, Benjamin Krämer

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report for Bug 41370 on Developer Community or GitHub if you have new information to add and do not yet see a matching new report.

If the latest results still closely match this report, you can use the original description:

  • Export the original title and description: Developer Community HTML or GitHub Markdown
  • Copy the title and description into the new report. Adjust them to be up-to-date if needed.
  • Add your new information.

In special cases on GitHub you might also want the comments: GitHub Markdown with public comments

Related Links:

Description Benjamin Krämer 2016-05-29 17:36:19 UTC
Created attachment 16129 [details]
Header for Florio SDK

I tried to create code from the headers of the Flomio iOS library.

For the header of FMAudioJackSessionManager which the header has defined as

@interface FMAudioJackSessionManager : NSObject <ACSAJReaderDelegate, FeitianAJReaderDelegate>

it correctly generates the following definition in C#:

interface FMAudioJackSessionManager : ACSAJReaderDelegate, FeitianAJReaderDelegate

ACSAJReaderDelegate and FeitianAJReaderDelegate are both protocols and have the ProtocolAttribute and ModelAttribute. The protocol FeitianAJReaderDelegate is a subset of the methods in ACSAJReaderDelegate.

Objective Sharpie now creates duplicate methods for all the methods that are defined in both protocols instead of creating them only once! The method signatures and the generated methods are an exact match, so they don't have to be generated twice.
Comment 1 Benjamin Krämer 2016-06-12 14:00:08 UTC
Still persisting in 3.1.7, any updates on this one?