version bug? or am I missing something?
Jonathan M Davis
jmdavisProg at gmx.com
Tue Jun 28 19:28:46 PDT 2011
On 2011-06-28 19:22, clone!(all) wrote:
> The following outputs "Unicode!". If I reverse the comment for [1] and
> [2] however, the output is "ASCII".
>
> file a:
> ================================
> module A;
>
> version = Unicode; [1]
>
> version(Unicode)
> {
> alias ChoiceA Choice;
> }
> else
> {
> alias ChoiceB Choice;
> }
>
> string ChoiceA() { return "Unicode!"; }
>
> string ChoiceB() { return "ASCII"; }
>
>
> file b:
> ================================
> module B;
>
> import std.stdio: writeln;
> import A;
>
> //version = Unicode; [2]
>
> static this()
> {
> writeln(Choice());
> }
>
> void main(){}
>
>
> ==========
> experience = GetExperience();
> assert(experience == "tyro")
When you use use add a new version like that, it only affects the file that
it's in. No other files are affected. If you want it to affect all files, you
have to use the -version flag when compiling.
- Jonathan M Davis
More information about the Digitalmars-d
mailing list