D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 17332 - optilink or dmd bug
Summary: optilink or dmd bug
Status: RESOLVED DUPLICATE of issue 16687
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: x86_64 Windows
: P1 critical
Assignee: No Owner
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-04-19 03:53 UTC by phreon111
Modified: 2017-10-24 22:41 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description phreon111 2017-04-19 03:53:00 UTC
Major optilink bugs, blocker. Code is long but demonstrates the issue. Compiles with ldc.

The source is large so I uploaded it

https://ufile.io/odaee

or

https://files.fm/u/frmks29t




OPTLINK (R) for Win32  Release 8.00.17
Copyright (C) Digital Mars 1989-2013  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset 481D2H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main12cApplication15ForegroundColorMFC4main11cSolidColorZv (void main.cApplication.ForegroundColor(main.cSolidColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset 49058H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main12cApplication15BackgroundColorMFC4main11cSolidColorZv (void main.cApplication.BackgroundColor(main.cSolidColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset 89BFFH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main9cTextItem5ColorMFC4main11cSolidColorZv (void main.cTextItem.Color(main.cSolidColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset A6CBEH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main11cSolidColor3RGBMFC4main9cRGBColorZv (void main.cSolidColor.RGB(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset A7B4BH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main11cSolidColor4GrayMFC4main10cGrayColorZv (void main.cSolidColor.Gray(main.cGrayColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset A89C6H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main11cSolidColor4CMYKMFC4main10cCMYKColorZv (void main.cSolidColor.CMYK(main.cCMYKColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset A9421H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main11cSolidColor3LabMFC4main9cLabColorZv (void main.cSolidColor.Lab(main.cLabColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset AA29FH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main11cSolidColor3HSBMFC4main9cHSBColorZv (void main.cSolidColor.HSB(main.cHSBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset E2D37H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main8cChannel5ColorMFC4main11cSolidColorZv (void main.cChannel.Color(main.cSolidColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset C1983H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main24cExportOptionsSaveForWeb10MatteColorMFC4main9cRGBColorZv (void main.cExportOptionsSaveForWeb.MatteColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset D33B4H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main20cPresentationOptions14PDFFileOptionsMFC4main15cPDFSaveOptionsZv (void main.cPresentationOptions.PDFFileOptions(main.cPDFSaveOptions))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset D8777H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main15cGalleryOptions13BannerOptionsMFC4main21cGalleryBannerOptionsZv (void main.cGalleryOptions.BannerOptions(main.cGalleryBannerOptions))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset D9617H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main15cGalleryOptions13ImagesOptionsMFC4main21cGalleryImagesOptionsZv (void main.cGalleryOptions.ImagesOptions(main.cGalleryImagesOptions))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset DA4C2H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main15cGalleryOptions16ThumbnailOptionsMFC4main24cGalleryThumbnailOptionsZv (void main.cGalleryOptions.ThumbnailOptions(main.cGalleryThumbnailOptions))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset DB36FH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main15cGalleryOptions18CustomColorOptionsMFC4main26cGalleryCustomColorOptionsZv (void main.cGalleryOptions.CustomColorOptions(main.cGalleryCustomColorOptions))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset DC219H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main15cGalleryOptions15SecurityOptionsMFC4main23cGallerySecurityOptionsZv (void main.cGalleryOptions.SecurityOptions(main.cGallerySecurityOptions))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset F078FH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main26cGalleryCustomColorOptions15BackgroundColorMFC4main9cRGBColorZv (void main.cGalleryCustomColorOptions.BackgroundColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset F163CH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main26cGalleryCustomColorOptions11BannerColorMFC4main9cRGBColorZv (void main.cGalleryCustomColorOptions.BannerColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset F24EAH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main26cGalleryCustomColorOptions9TextColorMFC4main9cRGBColorZv (void main.cGalleryCustomColorOptions.TextColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset F2F87H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main26cGalleryCustomColorOptions15ActiveLinkColorMFC4main9cRGBColorZv (void main.cGalleryCustomColorOptions.ActiveLinkColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset DD179H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main26cGalleryCustomColorOptions9LinkColorMFC4main9cRGBColorZv (void main.cGalleryCustomColorOptions.LinkColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset F4CF2H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main26cGalleryCustomColorOptions16VisitedLinkColorMFC4main9cRGBColorZv (void main.cGalleryCustomColorOptions.VisitedLinkColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset F8B4AH Record Type 00C3 
 Error 1: Previous Definition Different : _D4main23cGallerySecurityOptions9TextColorMFC4main9cRGBColorZv (void main.cGallerySecurityOptions.TextColor(main.cRGBColor))
Win32\Debug DMD\ConsoleApp1.obj(ConsoleApp1)  Offset 08935H Record Type 00C3 
 Error 1: Previous Definition Different : _D4main22cPicturePackageOptions9TextColorMFC4main9cRGBColorZv (void main.cPicturePackageOptions.TextColor(main.cRGBColor))
Error: linker exited with status 24


for x64:

ConsoleApp1.obj : fatal error LNK1179: invalid or corrupt file: duplicate COMDAT '_D4main12cApplication15ForegroundColorMFC4main11cSolidColorZv (void main.cApplication.ForegroundColor(main.cSolidColor))'


This is a blocker because ldc crashes during execution and I can't figure out why. (seems to be an incompatibility with VS 2017) So I cannot do much with all the hard work I've put in to getting the code generated. (which has been twice as long because I had to convert it to runtime code from ctfe since ctfe is broke too)
Comment 1 Rainer Schuetze 2017-04-20 18:27:03 UTC
Your code actually contains the reported functions twice.

It's unfortunate that this isn't reported by the compiler, but a known issue, e.g. https://issues.dlang.org/show_bug.cgi?id=15324.
Comment 2 Walter Bright 2017-10-24 22:40:33 UTC

*** This issue has been marked as a duplicate of issue 16687 ***