Log On
Embarcadero Home
Watch, Follow, &
Connect with Us
Share This
QualityCentral
Communities
Articles
Blogs
Resources
Downloads
Help
QualityCentral
Delphi Prism
Compatibility
Compiler
Database
Debugger
Demos
Documentation
IDE
Code Editor
Dialogs
Project Management
VS Integration
Install
International Enabling
Other
Suggestion
You are not logged in.
Help
Print
Public Report
Report From:
Delphi Prism/IDE
[ Add a report in this area ]
Report #:
85886
Status:
Open
"<PublicImplementationDetails>" used is defined in multiple assemblies
Project:
Embarcadero Prism
Build #:
Prism 2011
Version:
1.1
Submitted By:
David Wachtel
Report Type:
Issue
Date Reported:
7/2/2010 12:22:59 AM
Severity:
Commonly encountered problem
Last Updated:
3/20/2012 2:24:39 AM
Platform:
All platforms
Internal Tracking #:
277882
Resolution:
None
(Resolution Comments)
Resolved in Build:
:
None
Duplicate of:
None
Voting and Rating
Overall Rating:
No Ratings Yet
0.00 out of 5
Total Votes:
None
Description
Per Karlo Kok's request I am this post to the QC Report log.
......................
So this is an odd one.
It seems that this is a newly introduced problem/bug with Delphi Prism 2011, as the same code compiles without error on Prism 2010.
I was eventually able to identify the offending code; the issue is with with some legacy code that relies heavily on the use of sets.
I've created a crappy work around that keeps me moving; but for the interested, here's how to simply and quickly re-create this problem:
1. Create 2 assemblies using the class template in VS (2008 or 2010).
2. In each assembly add the followings declarations:
a) in assembly1 - add the following
Type
enum1 = public enum(abc, def, ghi);
set1 = public set of enum1;
compile and create the assembly.
b) in assembly2 - add the following
Type
enum2 = public enum(jkl, mno, pqr);
set2 = public set of enum2;
compile and create the assembly.
3) Now using the VS template create a 3rd assembly and add the following
Type
enum3 = public enum(stu, vwx, yz);
set3 = public set of enum3;
Now add, Assembly1 and Assembly2 as references in the Assembly 3 project.
When you (or when I) try build Assembly 3; I get the folllowing compilation/build error:
Error
1
(CE73) Type "<PublicImplementationDetails>" used is defined in multiple assemblies (Assembly1, Assembly2)
C:\Program Files (x86)\MSBuild\RemObjects Software\Oxygene\RemObjects.Oxygene.targets
167
5
Assembly3
I am not happy with my workaround; I moved all the set and enum declarations into a single assembly and it now builds without an issue but this is not desirable so I'd really like to get some help on how to better move forward.
Steps to Reproduce:
here's how to simply and quickly re-create this problem:
1. Create 2 assemblies using the class template in VS (2008 or 2010).
2. In each assembly add the followings declarations:
a) in assembly1 - add the following
Type
enum1 = public enum(abc, def, ghi);
set1 = public set of enum1;
compile and create the assembly.
b) in assembly2 - add the following
Type
enum2 = public enum(jkl, mno, pqr);
set2 = public set of enum2;
compile and create the assembly.
3) Now using the VS template create a 3rd assembly and add the following
Type
enum3 = public enum(stu, vwx, yz);
set3 = public set of enum3;
Now add, Assembly1 and Assembly2 as references in the Assembly 3 project.
When you (or when I) try build Assembly 3; I get the folllowing compilation/build error:
Error
1
(CE73) Type "<PublicImplementationDetails>" used is defined in multiple assemblies (Assembly1, Assembly2)
C:\Program Files (x86)\MSBuild\RemObjects Software\Oxygene\RemObjects.Oxygene.targets
167
5
Assembly3
Workarounds
I am not happy with my workaround; I moved all the set and enum declarations into a single assembly and it now builds without an issue but this is not desirable so I'd really like to get some help on how to better move forward.
Attachment
None
Comments
None
View Your Reports
Search
Server Response from: ETNACODE01
Developer Tools
Blackfish SQL
C++Builder
Delphi
FireMonkey
Prism
InterBase
JBuilder
J Optimizer
HTML5 Builder
3rdRail & TurboRuby
Database Tools
Change Manager
DBArtisan
DB Optimizer
ER/Studio
Performance Center
Rapid SQL
Technical Articles
Tutorials
White Papers
Press Releases
Newsletters
Add Content (GetPublished)
Audio
Audio & Video
Video
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Tags
Technology Partners
Downloads
Free Trials
Registered User Downloads
Beta Programs
Add Content (GetPublished)
Articles
Blogs
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Member Services
About
Connect with Us