Bug 12464 – DMD/Phobos cannot auto-implement D variadic methods
Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
phobos
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2014-03-25T07:29:00Z
Last change time
2014-04-24T15:16:55Z
Keywords
pull, rejects-valid
Assigned to
andrej.mitrovich
Creator
Marco.Leise
Comments
Comment #0 by Marco.Leise — 2014-03-25T07:29:58Z
Affects at least 2.064.2 and 2.065.
This code:
---------------------------
import std.stream;
import std.typecons;
BlackHole!OutputStream dout;
---------------------------
fails on 2.064.2 with:
---------------------------
/opt/dmd-2.064/import/std/typecons.d(2225): Error: '__va_argsave_t' is not defined, perhaps you need to import core.vararg; ?
/opt/dmd-2.064/import/std/typecons.d(2225): Error: function std.typecons.AutoImplement!(OutputStream, generateEmptyFunction, isAbstractFunction).AutoImplement.printf must import core.vararg to use variadic functions
/opt/dmd-2.064/import/std/typecons.d(2233): Error: '__va_argsave_t' is not defined, perhaps you need to import core.vararg; ?
/opt/dmd-2.064/import/std/typecons.d(2233): Error: function std.typecons.AutoImplement!(OutputStream, generateEmptyFunction, isAbstractFunction).AutoImplement.writef must import core.vararg to use variadic functions
/opt/dmd-2.064/import/std/typecons.d(2241): Error: '__va_argsave_t' is not defined, perhaps you need to import core.vararg; ?
/opt/dmd-2.064/import/std/typecons.d(2241): Error: function std.typecons.AutoImplement!(OutputStream, generateEmptyFunction, isAbstractFunction).AutoImplement.writefln must import core.vararg to use variadic functions
---------------------------
and on 2.065 with:
---------------------------
/opt/dmd-2.065/import/std/typecons.d-mixin-2074(2258): Error: '__va_argsave_t' is not defined, perhaps you need to import core.vararg; ?
/opt/dmd-2.065/import/std/typecons.d-mixin-2074(2258): Error: function std.typecons.AutoImplement!(OutputStream, generateEmptyFunction, isAbstractFunction).AutoImplement.printf must import core.vararg to use variadic functions
/opt/dmd-2.065/import/std/typecons.d-mixin-2074(2266): Error: '__va_argsave_t' is not defined, perhaps you need to import core.vararg; ?
/opt/dmd-2.065/import/std/typecons.d-mixin-2074(2266): Error: function std.typecons.AutoImplement!(OutputStream, generateEmptyFunction, isAbstractFunction).AutoImplement.writef must import core.vararg to use variadic functions
/opt/dmd-2.065/import/std/typecons.d-mixin-2074(2274): Error: '__va_argsave_t' is not defined, perhaps you need to import core.vararg; ?
/opt/dmd-2.065/import/std/typecons.d-mixin-2074(2274): Error: function std.typecons.AutoImplement!(OutputStream, generateEmptyFunction, isAbstractFunction).AutoImplement.writefln must import core.vararg to use variadic functions
---------------------------
It compiles with GDC and LDC though.
Comment #1 by andrej.mitrovich — 2014-04-21T20:56:33Z
Works in git-head. Maybe fixed by a pull for another issue?
Comment #2 by github-bugzilla — 2014-04-24T15:16:55Z