digitalmars.D - Mixin strange behaviour (was Mixin bug, but this time i've got the real problem, read please)
- Lox TG (72/72) Mar 16 2005 Hi to all,
- Manfred Nowak (9/10) Mar 16 2005 [...]
- J C Calvarese (6/21) Mar 16 2005 Sometimes mere mortals don't know if it's a bug or not until after they
- Lox TG (1/22) Mar 17 2005
- Lox TG (18/39) Mar 17 2005 Pardonez moi, mea culpa, mea maxima culpa.
- Manfred Nowak (19/22) Mar 17 2005 [...]
- Derek Parnell (12/15) Mar 17 2005 Do worry yourself too much over Manfred's enthusiasm; he's mostly harmle...
- Lox TG (35/49) Mar 17 2005 Firstable there's no rule page for this forum in the DM site, so all the
- J C Calvarese (11/14) Mar 17 2005 Please calm down a little. Manfred is obnoxious to everyone. Don't feel ...
- Manfred Nowak (16/19) Mar 17 2005 [...]
- Federico_Lox TG (6/25) Mar 17 2005 Still laughing till madness :-D
- Thomas Kuehne (2/4) Mar 17 2005 http://anime-empire.kicks-ass.net/404.php
- Georg Wrede (26/57) Mar 21 2005 Manfred, please!
- Manfred Nowak (21/26) Mar 21 2005 [...]
Hi to all, i'm back to the forum to ask a question about mixins 'cuz i've found something strange: /*-------------------------- test 1 -------------------------*/ template Macro(alias a) { int main(char[][] args) { a(); return 0; { } int Foo() { return 3; } mixin Macro!(Foo); /*----------------------------*/ it compiles flawlessy, no problem in inlining the parametrized mixin code as te executable's main function, but when it comes to Win32 programming something strange happens: /*---------------------------- test 2 ----------------------------*/ import std.c.windows.windows; extern (C) void gc_init(); extern (C) void gc_term(); extern (C) void _minit(); extern (C) void _moduleCtor(); extern (C) void _moduleUnitTests(); template Macro(alias a) { extern (Windows) int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { int result; gc_init(); // initialize garbage collector _minit(); // initialize module constructor table try { _moduleCtor(); // call module constructors _moduleUnitTests(); // run unit tests (optional) result = a(hInstance, hPrevInstance, lpCmdLine, nCmdShow); } catch (Object o) // catch any uncaught exceptions { //MessageBoxW(null, cast(wchar *)o.toString(), "Error", MB_OK | MB_ICONEXCLAMATION); result = 0; // failed } gc_term(); // run finalizers; terminate garbage collector return result; } } int pippo(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { return 3; } mixin Macro!(pippo); /*-----------------------------------*/ now the strange thing: the linker cannot find _WinMain 16 simbol and reference. After some tests I've found that it acts like the extern(Windows) attribute is ignored. So I've tried putting it on both the template definition and the mixin statement but there was nothing to do :-( Now the question: Is this a bug? Can it be solved? Or there's a way to get around it? "When Rome will Fall Then the World."
Mar 16 2005
Lox TG <Lox_member pathlink.com> wrote: [...]found something strange:[...] Would you please post here only if you are _sure_, that you are _not_ describing a bug. Otherwise send your posts to the digitalmars.bugs- NG please. There are similar posts already. For example: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D.bugs/1686 -manfred
Mar 16 2005
Manfred Nowak wrote:Lox TG <Lox_member pathlink.com> wrote: [...]Sometimes mere mortals don't know if it's a bug or not until after they post it.found something strange:[...] Would you please post here only if you are _sure_, that you are _not_ describing a bug. Otherwise send your posts to the digitalmars.bugs- NG please.There are similar posts already. For example: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D.bugs/1686 -manfred-- Justin (a/k/a jcc7) http://jcc_7.tripod.com/d/
Mar 16 2005
In article <d1bb4u$5u0$2 digitaldaemon.com>, J C Calvarese says...Manfred Nowak wrote:Lox TG <Lox_member pathlink.com> wrote: [...]Sometimes mere mortals don't know if it's a bug or not until after they post it.found something strange:[...] Would you please post here only if you are _sure_, that you are _not_ describing a bug. Otherwise send your posts to the digitalmars.bugs- NG please.There are similar posts already. For example: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D.bugs/1686 -manfred-- Justin (a/k/a jcc7) http://jcc_7.tripod.com/d/
Mar 17 2005
In article <d1bb4u$5u0$2 digitaldaemon.com>, J C Calvarese says...Manfred Nowak wrote:Pardonez moi, mea culpa, mea maxima culpa. It seems that folks on this forum are very good at welcoming newbies. Anyone thought that I couldn't know if it is a bug or not? Maybe it is a rule "Do not use mixins' parametrized code with a linkage other than D", the docs on the site seems not to be always so specific to me (let's say that they're not the same as VC++ online help ;-)). It seemed to me that doing some investigation on this strange behaviour prior to bothering the guys at DM posting it as a bug on the dedicated forum (YES, I know that it exists and that there are similar posts on it, but you wrote right, SIMILAR, full stop. I've haven't found a bug post dealing woth Windows linkage in mixins). If you feel being bothered from SIMILAR question (Oh, what a crime) you have the right to ignore them. There's no reason to laugh at us "mere mortals", as you said (I'm wondering if it make you feel a REAL pro :-D). Still very impressed though. "When Rome will Fall Then the World"Lox TG <Lox_member pathlink.com> wrote: [...]Sometimes mere mortals don't know if it's a bug or not until after they post it.found something strange:[...] Would you please post here only if you are _sure_, that you are _not_ describing a bug. Otherwise send your posts to the digitalmars.bugs- NG please.There are similar posts already. For example: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D.bugs/1686 -manfred-- Justin (a/k/a jcc7) http://jcc_7.tripod.com/d/
Mar 17 2005
Lox TG <Lox_member pathlink.com> wrote: [...]I couldn't know if it is a bug or not? Maybe[...]bothering the guys at DM posting it as a bug on the dedicated forum[...] This has nothing to do with you yourself declaring as a newbie to D. But rather with the rules of thumb existing in news groups: Using fake names is impolite. Using fake email adresses is impolite. Cross posting is impolite. Posting to general NG, if there is a dedicated NG, is impolite. Making wrong statements and not excusing is impolite. Beginning a new thread and not leading it is impolite. Beginning a new thread on nearly the same subject after a few days is impolite. People who start to flame, when they get a hint that they might not have followed the rules of thumb, are impolite. Impolite people are considered as spam and plonked or forwarded to clown groups. Decide yourself how you want your posts to be treated. -manfred
Mar 17 2005
On Thu, 17 Mar 2005 11:30:36 +0000 (UTC), Manfred Nowak wrote: [snip]Decide yourself how you want your posts to be treated. -manfredDo worry yourself too much over Manfred's enthusiasm; he's mostly harmless even though he comes across as a bit Teutonic at times. He sincerely means well, so don't take it personally. Me, however...I'm impolite, disrespectful to self-important people, and basically full of shit, IMNSHO ;-) So don't listen to my chaff and rubbish. -- Derek Parnell Melbourne, Australia http://www.dsource.org/projects/build 18/03/2005 12:51:29 AM
Mar 17 2005
Firstable there's no rule page for this forum in the DM site, so all the beautiful things you wrote are only useless chars in a remote DB ;-) However:Using fake names is impolite.I've taken a look in the forum and found that there's not only me using a NICKname, and it seems to be a normal thing to use a NICKname in forums, chats, newsgroups and mailinglists.Using fake email adresses is impolite.Sorry but my account is just full of spam, don't wat any other :-) And it was not fake, just didn't entered it.Cross posting is impolite.I'm used to PHPBB, this forum has a simpler but different interface, I made some confusion with the buttons but I'm managing to getting used to it, I know I can do it :-DPosting to general NG, if there is a dedicated NG, is impolite.Oh God of the gods, will he never understand? I didn't know if it was a bug or not and seems to me very IMPOLITE to post as a bug without have ever asked someone else if he knows it is or not. ;-)Making wrong statements and not excusing is impolite.You think that writing "Yo stupid guy, post this scrap elsewhere" without answering at the question is POLITE? And insulting people with things like "mere mortals"? I think not ;-)Beginning a new thread and not leading it is impolite.Again, I'm getting used to this forum interface.Beginning a new thread on nearly the same subject after a few days is impolite.If the server didn't blocked it, it means i can do it, and the new post was made 'cuz nearly noone replied (except You, if i'm not making a mistake, so thnx very much, but it was enough evident that it was not a problem of type definition, Win32 programming in D is still doable without importing the useless std.c.windows.windows module and the OPTLINK linker) and I had new clues about the problem, needed to attract your attention ;-)People who start to flame, when they get a hint that they might not have followed the rules of thumb, are impolite.People who continue to flame are IMPOLITE, aren't they? :-)Impolite people are considered as spam and plonked or forwarded to clown groups.Ok, let's have a beer next time we'll meet to the circus for work, I'll pay for you too, OK? :-DDecide yourself how you want your posts to be treated.I've decided, but you have to take a decision too, decide how you want to take care of new user of D, it could have consequencies on the language diffusion over time ;-)Do not worry yourself too much over Manfred's enthusiasmThnx Derek (can I call you Derek? I don't want to seem IMPOLITE ;-) ), but I'm not taking the risk :-) Stil very very impressed though. "When Rome will Fall Then the World"
Mar 17 2005
In article <d1c4mn$12ml$1 digitaldaemon.com>, Lox TG says... ..You think that writing "Yo stupid guy, post this scrap elsewhere" without answering at the question is POLITE? And insulting people with things like "mere mortals"? I think not ;-)Please calm down a little. Manfred is obnoxious to everyone. Don't feel like you're be singled out. By the way, I was the guy wrote "mere mortals" and it was directed at Manfred--not you. I was hinting to him that we don't all consider ourselves to be programming gods, and he should cut the rest of us some slack. If it was insulting, it definitely wasn't meant to insulting to you (unless you consider yourself to be immortal, in which case I hope you have time to forgive all of us for the misunderstanding). jcc7
Mar 17 2005
Lox TG <Lox_member pathlink.com> wrote:Firstable there's no rule page for this forum in the DM site, so all the beautiful things you wrote are only useless chars in a remote DB ;-)[...] I see. Could it be that you are one of these guys who need signs on the walls everywhere? Do you frequently notice, that people stand up and leave when you just sat down? Do you frequently notice, that when you greet people on the road, they do not greet back? Can it be that, if one day somebody will not stand up or will greet back and in addition remarks that incredible body smell makes people lonely, you would bark at him, that there are no signs at the wall that disallow you to have body smell? You are welcome to do what you like, iff you accept that others also do what they like. -manfred
Mar 17 2005
In article <d1cu0o$1uve$1 digitaldaemon.com>, Manfred Nowak says...Lox TG <Lox_member pathlink.com> wrote:Still laughing till madness :-D You're not so bad in the end ;-) More impressed than before. "When Rome will Fall Then the World"Firstable there's no rule page for this forum in the DM site, so all the beautiful things you wrote are only useless chars in a remote DB ;-)[...] I see. Could it be that you are one of these guys who need signs on the walls everywhere? Do you frequently notice, that people stand up and leave when you just sat down? Do you frequently notice, that when you greet people on the road, they do not greet back? Can it be that, if one day somebody will not stand up or will greet back and in addition remarks that incredible body smell makes people lonely, you would bark at him, that there are no signs at the wall that disallow you to have body smell? You are welcome to do what you like, iff you accept that others also do what they like. -manfred
Mar 17 2005
"When Rome will Fall Then the World"http://anime-empire.kicks-ass.net/404.php Read on for a seccond or 2
Mar 17 2005
Manfred Nowak wrote:Lox TG <Lox_member pathlink.com> wrote: [...]Manfred, please! Up till we got the new newsgroups, this NG has had an exceptional reputation for being polite, to the point, and helpful. Let's not create a warzone here. And let's not give D a bad reputation for being "only a language for hostile and aggressive insiders", unwelcoming the unsuspecting. --------------- If new people have a hard time getting our Rules right, then we should, (or actually *Walter* should) fix it! How do people find these pages? Is it via Links on DM, for example. If it is, then there should be information on what we want and do not want on a particular NG. In any case, there should be one page where these rules (or, I'd more like the word "guide lines") are posted. Instead of telling people to f**k off, we could just refer them to that page. --------------- P.S: Ok, I've done my share of posting when tired or in a hangover. (Most notably in early 2003, when I totally misrepresented the meaning of float cast to int (or something).) I was so ashamed I didn't post anything here for 6 months. (Check the records.) There was also (I think before Christmas) a post "D is doomed" or something, with a false name, which (probably) was written both angry and drunk. We all have our guesses on who that was, but we never beat the guy out of this NG either.I couldn't know if it is a bug or not? Maybe[...]bothering the guys at DM posting it as a bug on the dedicated forum[...] This has nothing to do with you yourself declaring as a newbie to D. But rather with the rules of thumb existing in news groups: Using fake names is impolite. Using fake email adresses is impolite. Cross posting is impolite. Posting to general NG, if there is a dedicated NG, is impolite. Making wrong statements and not excusing is impolite. Beginning a new thread and not leading it is impolite. Beginning a new thread on nearly the same subject after a few days is impolite. People who start to flame, when they get a hint that they might not have followed the rules of thumb, are impolite. Impolite people are considered as spam and plonked or forwarded to clown groups. Decide yourself how you want your posts to be treated. -manfred
Mar 21 2005
Georg Wrede <georg.wrede nospam.org> wrote: [...]In any case, there should be one page where these rules (or, I'd more like the word "guide lines") are posted. Instead of telling people to f**k off, we could just refer them to that page.[...] Dear Georg, I always read your thoughts with pleasure, whether I agree or disagree in the end. Referring to a page is just including the contents of the page into the post. So it is just a matter of taste whether to consider preformulated text or individually written text more friendly. I prefer the second choice. In either case somebody has to start with expressing the unwanted. If I have choosen the wrong words the next poster can improve on them. If somebody chooses to provide a link like http://groups.google.de/groups?selm=c76017cb.0112180637.c1abdb7% 40posting.google.com&output=gplain somebody may consider the contents also as inapropriate for this NG. However, I am sure that as I did also the provider of such a link would not want to express that the originator of the incriminated post should f**k off. -manfred
Mar 21 2005