Templates with multiple enums are void

2010-08-27 Thread Jonathan M Davis
This prints out void: import std.stdio; template isX(T) { enum val = true; enum isX = val; } void main() { writeln(typeof(isX!(int)).stringof); } If you change it to template isX(T) { enum val = true; enum isX = true; } it still prints out void. If you get rid of val,

Re: Can't get D calling C to build.

2010-08-27 Thread Bob Cowdery
On 26/08/2010 21:43, Philippe Sigaud wrote: On Tue, Aug 24, 2010 at 15:24, Bob Cowdery b...@bobcowdery.plus.com mailto:b...@bobcowdery.plus.com wrote: I might be on my way :-) . Good :) I just skimmed through the thread, so I don't know if you're still using Code::Blocks. I'm using

Re: Can't get D calling C to build.

2010-08-27 Thread Andrej Mitrovic
CB doesn't officially have support for D (I don't see it in code completion either), afaik. But it does have syntax highlighting for it. I have about 30 or so different languages selectable in the highlighter, I think these came by default. Bob Cowdery Wrote: On 26/08/2010 21:43, Philippe

Exact effects of returning Structs

2010-08-27 Thread Era Scarecrow
I have some experimental code I'm writing, and it seems when i return a structure it is either corrupted, or should be disallowed all together. A postblit is suggested this(this), but since I'm returning a structure that isn't tied to anything else it doesn't need to duplicate it. Example:

Re: Exact effects of returning Structs

2010-08-27 Thread bearophile
Era Scarecrow: I have some experimental code I'm writing, and it seems when i return a structure it is either corrupted, or should be disallowed all together. A postblit is suggested this(this), but since I'm returning a structure that isn't tied to anything else it doesn't need to

Re: Can't get D calling C to build.

2010-08-27 Thread Philippe Sigaud
On Fri, Aug 27, 2010 at 11:08, Bob Cowdery b...@bobcowdery.plus.com wrote: *** I'm running 10.05 but when I go to Syntax highlighting there is no 'D' in the dropdown. I have C/C++, Squirrel, Windows Resource, XML. To get some highlighting I just set the mask for C/C++ to include *.d. On

Re: Exact effects of returning Structs

2010-08-27 Thread Era Scarecrow
== Quote from bearophile (bearophileh...@lycos.com)'s article Era Scarecrow: I have some experimental code I'm writing, and it seems when i return a structure it is either corrupted, or should be disallowed all together. A postblit is suggested this(this), but since I'm returning a structure

Re: Exact effects of returning Structs

2010-08-27 Thread Steven Schveighoffer
On Fri, 27 Aug 2010 16:04:50 -0400, Era Scarecrow rtcv...@yahoo.com wrote: == Quote from bearophile (bearophileh...@lycos.com)'s article Era Scarecrow: I have some experimental code I'm writing, and it seems when i return a structure it is either corrupted, or should be disallowed all

Re: Exact effects of returning Structs

2010-08-27 Thread Era Scarecrow
== Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article array's (dynamic and otherwise) filled with 0's by default? No, arrays are filled with the .init value. For char, that's 0xff. -Steve Ahh that's right. It's 0xFF which is a illegal character for UTF-8 encoding. That does

Re: Templates with multiple enums are void

2010-08-27 Thread Philippe Sigaud
On Fri, Aug 27, 2010 at 09:31, Jonathan M Davis jmdavisp...@gmail.comwrote: However, as I understood it, you should be able to declare multiple enums within the same template and get this to work as long as you just have the one with the same name as the template. Am I wrong about that? Or

Re: Templates with multiple enums are void

2010-08-27 Thread Don
Jonathan M Davis wrote: This prints out void: import std.stdio; template isX(T) { enum val = true; enum isX = val; } void main() { writeln(typeof(isX!(int)).stringof); } If you change it to template isX(T) { enum val = true; enum isX = true; } it still prints out

Re: Templates with multiple enums are void

2010-08-27 Thread Simen kjaeraas
Don nos...@nospam.com wrote: Jonathan M Davis wrote: This prints out void: import std.stdio; template isX(T) { enum val = true; enum isX = val; } void main() { writeln(typeof(isX!(int)).stringof); } If you change it to template isX(T) { enum val = true; enum isX =

Re: Templates with multiple enums are void

2010-08-27 Thread Jonathan M Davis
On Friday, August 27, 2010 14:55:12 Simen kjaeraas wrote: Don nos...@nospam.com wrote: You're wrong about that. Actually, according to TDPL, that is correct. A template using the eponymous trick may define other names inside, but those are simply inaccessible from the outside. (page 281)

Re: Templates with multiple enums are void

2010-08-27 Thread Andrej Mitrovic
Yeah, I ran into this as well. And I've posted about it on this NG already. I have made this bug report some time ago: http://d.puremagic.com/issues/show_bug.cgi?id=4675 Simen kjaeraas Wrote: Don nos...@nospam.com wrote: Jonathan M Davis wrote: This prints out void: import

Compiling Windows GUI-application

2010-08-27 Thread Fab
Hi I'm new in D but I used coding Delphi. I decided using D as my main programming language because I've dumped Delphi as a consequence of its awkwardness. Now I'm using D with Tango on the MS Windows plattform. So I don't want to miss GUIs and I decided to use GtkD. Actually I'm happy because I

Re: Compiling Windows GUI-application

2010-08-27 Thread Stanislav Blinov
Fab wrote: Hi Welcome! I'm new in D but I used coding Delphi. I decided using D as my main programming language because I've dumped Delphi as a consequence of its awkwardness. Well that's a pretty strange reason to me, but I must take it that you just don't want or can't express it in

Re: Compiling Windows GUI-application

2010-08-27 Thread Andrej Mitrovic
Try compiling with -L/SUBSYSTEM:WINDOWS: There's more advice here (it's not a GtkD forum but it might help): http://www.dsource.org/forums/viewtopic.php?t=3993highlight=console Fab Wrote: Hi I'm new in D but I used coding Delphi. I decided using D as my main programming language because

Re: Compiling Windows GUI-application

2010-08-27 Thread torhu
On 28.08.2010 00:58, Andrej Mitrovic wrote: Try compiling with -L/SUBSYSTEM:WINDOWS: -L/subsystem:windows:4 is better, maybe that's what you meant. Optlink defaults to an older version, which means some widgets don't work properly.

Re: Compiling Windows GUI-application

2010-08-27 Thread Fab
Thank you. I am using my mobile phone to answer so it's pretty hard. I will try your tips later. ps: i wanted to say that delphi is slow and it seems to be old. in addition the bindings for sdl, allegro and so on are bad and there are't any free delphi versions.