Bug 17114 – DMD 2.073.0 Error: undefined identifier '_arrayExpComSliceAndass_k' in module 'app'

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2017-01-23T08:06:00Z
Last change time
2017-01-24T06:33:21Z
Assigned to
nobody
Creator
viserion.thrall

Comments

Comment #0 by viserion.thrall — 2017-01-23T08:06:39Z
With DMD 2.073.0 I am now getting compilation errors when compiling the code contained in https://github.com/Soulsbane/ctoptions/blob/develop/source/ctoptions/commander.d ./libs/ctoptions/source/ctoptions/commander.d(187,28): Error: undefined identifier '_arrayExpComSliceAndass_k' in module 'app' ../libs/ctoptions/source/ctoptions/commander.d(187,28): Error: undefined identifier '_arrayExpSliceAndass_k' in module 'app' source/app.d(232,13): Error: template instance app.main.Commander!"app".Commander.process!() error instantiating It is failing on this code: alias member = helper!(__traits(getMember, mod, memberName)); The 'mod' variable comes from: alias mod = helper!(mixin(modName)); This code is part of a mixin template where 'modName' is defined as mixin template Commander(string modName = __MODULE__). I have no idea what the problem is. This code has always worked before now. The only fix for now is I've done a static if to check for those function names and skip over them in that case. Hopefully that's enough info! Thanks!
Comment #1 by viserion.thrall — 2017-01-24T06:33:21Z
I'm still not sure what changed in the new DMD but I'ved fixed that problem. It had to deal with a library publically importing another library as far as I could see. Disregard this.