User forums > Using Code::Blocks
CVS compile error
Urxae:
--- Quote from: rickg22 on October 19, 2005, 08:22:40 pm ---Argh! Is this a C::B bug? :(
--- End quote ---
Yes, and what's worse, it's one that was supposed to have been fixed. From "Code::Blocks compiles in 64 bit Linux!!":
--- Quote from: Promit on April 20, 2005, 04:34:33 am ---Mandrav: You were using wxCommandEvent::SetInt in several places to pass a Parser*. This is naturally no longer allowed, since int remains 4 bytes while Parser* is 8. I modified the code to always use wxCommandEvent::SetExtraLong instead of SetInt, but that didn't actually prevent the crash, even after modifying ALL of the SetInt calls rather than just the ones that used SetInt to transfer a pointer. I'm looking around the source, but if you have any insight as to where the problem might be, that'd be greatly appreciated.
--- End quote ---
--- Quote from: mandrav on April 20, 2005, 08:30:30 am ---You 're right. It was a quick-hack to pass around the Parser* while developing and it got left in there. What's worse, I forgot about it...
Thanks for reminding me :)
--- End quote ---
Either Yiannis forgot about it (again) even after being reminded, or it somehow snuck back in :(.
Well, to look at the bright side, at least the fix is known :D. (The crash they were talking about was the infamous "codecompletion plugin on Linux" one)
mandrav:
@kalxas: I 've commited the fix in CVS. In a few hours it 'll be available in anonymous CVS too. Let's hope I 've fixed all the occurences :)
--- Quote from: Urxae on October 19, 2005, 10:25:38 pm ---Either Yiannis forgot about it (again) even after being reminded, or it somehow snuck back in :(.
--- End quote ---
See, that's why I usually tell people to post a bug-report/feature-request: it's the only certain way of keeping a list of things to be done.
Thanks for the sarcasm anyway...
kalxas:
Thanks a lot Yanni!
I will compile the source tommorow and report back the result :)
But I have a question:
Shouldn't it be sizeof(int) == 8 in a 64bit OS?
Thanks again!
Kalxas
mandrav:
--- Quote from: kalxas on October 19, 2005, 11:01:23 pm ---Shouldn't it be sizeof(int) == 8 in a 64bit OS?
--- End quote ---
I think that (int=32bit) and (long int=64bit) in 64-bit systems, but don't take my word for it. I have near-zero experience with 64-bit systems :oops:
kalxas:
I bought my first 64bit system, few months ago, and I didn't have the chance to test it with a 64 bit OS until now.
I was under the impression that I should get 64bits for the plain integer in my code, and this was the main reason I wanted to move to a pure 64bit OS. But, until now, all test show that sizeof(int) == 4 must be the case :(
So, in C::B you use a cast to get through this problem? Is this wxCommandEvent::SetExtraLong command a wrap of a reinterpret_cast() in Wx?
Cheers. :)
Kalxas
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version