www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Issues with std.format template function

reply LeqxLeqx <LeqxLeqx protonmail.ch> writes:
Hello!

I'm having issues with the format function.

My program is as follows:


   import std.format;
   import std.stdio;

   int main ()
   {

     auto s = format!"%s is %s"("Pi", 3.14);
     writeln(s); // "Pi is 3.14";

   }




and when compiling with GDC, I'm getting this error:

   test.d:8: error: template instance format!"format is �i{" 
template '{ih��
                                                                   
          ���
                                                                   
             P��
                                                                   
                 P�	    �N�	P��
                                                                   
                                  ' is not defined


I do not know why. Any help would be much appreciated!


Thank you all!
Aug 14 2017
parent reply HyperParrow <hpoo klp1212.pl> writes:
On Tuesday, 15 August 2017 at 04:44:25 UTC, LeqxLeqx wrote:
 Hello!

 I'm having issues with the format function.

 My program is as follows:


   import std.format;
   import std.stdio;

   int main ()
   {

     auto s = format!"%s is %s"("Pi", 3.14);
     writeln(s); // "Pi is 3.14";

   }




 and when compiling with GDC, I'm getting this error:

   test.d:8: error: template instance format!"format is �i{" 
 template '{ih��
 
          ���
 
             P��
 
                 P�	    �N�	P��
 
                                  ' is not defined


 I do not know why. Any help would be much appreciated!


 Thank you all!
GDC front-end is based on DMD 2.068.2 but the feature you use (format specifier as template parameter) is only there since DMD 2.075. The error comes from the fact that you read the online documentation which is not valid for GDC. with GDC you can only does unchecked fmt: `auto s = format("%s is %s", "Pi", 3.14);`
Aug 14 2017
parent LeqxLeqx <LeqxLeqx protonmail.ch> writes:
On Tuesday, 15 August 2017 at 05:22:44 UTC, HyperParrow wrote:
 On Tuesday, 15 August 2017 at 04:44:25 UTC, LeqxLeqx wrote:
 [...]
GDC front-end is based on DMD 2.068.2 but the feature you use (format specifier as template parameter) is only there since DMD 2.075. The error comes from the fact that you read the online documentation which is not valid for GDC. with GDC you can only does unchecked fmt: `auto s = format("%s is %s", "Pi", 3.14);`
Well that explains it. Thanks for the info
Aug 15 2017