Thread overview | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
May 04, 2008 [Issue 2066] New: toString(int) nto CTFE-compatible | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=2066 Summary: toString(int) nto CTFE-compatible Product: D Version: 2.014 Platform: PC OS/Version: Windows Status: NEW Severity: major Priority: P2 Component: Phobos AssignedTo: bugzilla@digitalmars.com ReportedBy: simen.kjaras@gmail.com import std.string; pragma(msg, toString(42)); The above program fails to compile, with the error message "cannot evaluate toString(42) at compile time" -- |
May 04, 2008 Re: [Issue 2066] New: toString(int) nto CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | Reply to d-bugmail@puremagic.com,
> http://d.puremagic.com/issues/show_bug.cgi?id=2066
>
> Summary: toString(int) nto CTFE-compatible
> Product: D
> Version: 2.014
> Platform: PC
> OS/Version: Windows
> Status: NEW
> Severity: major
> Priority: P2
> Component: Phobos
> AssignedTo: bugzilla@digitalmars.com
> ReportedBy: simen.kjaras@gmail.com
> import std.string;
>
> pragma(msg, toString(42));
>
> The above program fails to compile, with the error message "cannot
> evaluate toString(42) at compile time"
>
in "static code" you can use "42.stringof" but, IIRC, that won't work in other CTFE functions.
|
May 04, 2008 [Issue 2066] toString(int) nto CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=2066 ------- Comment #2 from simen.kjaras@gmail.com 2008-05-04 16:32 ------- (In reply to comment #1) > Reply to d-bugmail@puremagic.com, > in "static code" you can use "42.stringof" but, IIRC, that won't work in > other CTFE functions. Example: template foo(int line = __LINE__) { pragma(msg, line.stringof); // prints 'line'. pragma(msg, toString(line)); // should print a number of some kind. Currently does not. } That is pretty much why I need this. -- |
May 04, 2008 Re: [Issue 2066] New: toString(int) nto CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | On 04/05/2008, d-bugmail@puremagic.com <d-bugmail@puremagic.com> wrote:
> import std.string;
>
> pragma(msg, toString(42));
>
> The above program fails to compile, with the error message "cannot evaluate
> toString(42) at compile time"
You could try
import std.metastrings;
pragma(msg, ToString!(42));
|
November 24, 2008 [Issue 2066] toString(int) nto CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=2066 ------- Comment #4 from rosscanning2007@gmail.com 2008-11-24 00:23 ------- Thanks for the workaround, Janice. Here is another example that is almost certainly related (CTFE seems to work only with single-digit numbers!): import std.stdio; import std.string; template Foo(uint id) { invariant string Foo = "writefln(" ~ std.string.toString(id) ~ ");"; } invariant uint ID = 1; // THIS LINE WORKS //invariant uint ID = 10; // THIS LINE FAILS void main() { mixin(Foo!(ID)); } -- |
October 11, 2009 [Issue 2066] toString(int) nto CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=2066 Andrei Alexandrescu <andrei@metalanguage.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |andrei@metalanguage.com AssignedTo|nobody@puremagic.com |andrei@metalanguage.com -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
January 18, 2010 [Issue 2066] to!(string)(int) into CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=2066 Don <clugdbug@yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |clugdbug@yahoo.com.au Summary|toString(int) nto |to!(string)(int) into |CTFE-compatible |CTFE-compatible --- Comment #5 from Don <clugdbug@yahoo.com.au> 2010-01-18 00:59:38 PST --- Changed bug title to reflect changes in Phobos: toString -> to!(string). Fixed in svn 1402. Requires DMD svn 332 or later. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
January 31, 2010 [Issue 2066] to!(string)(int) into CTFE-compatible | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=2066 Walter Bright <bugzilla@digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED CC| |bugzilla@digitalmars.com Resolution| |FIXED --- Comment #6 from Walter Bright <bugzilla@digitalmars.com> 2010-01-30 22:44:16 PST --- fixed dmd 2.040 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation