#pentagram@irc.freenode.net logs for 10 Mar 2003 (GMT)

Archive Today Yesterday Tomorrow
Pentagram homepage


[00:27:22] --> Kirben has joined #pentagram
[00:27:22] --- ChanServ gives channel operator status to Kirben
[00:44:29] <-- Dark-Star has left #pentagram ()
[02:09:23] <-- Kirben has left IRC (Read error: 54 (Connection reset by peer))
[02:09:37] --> Kirben has joined #pentagram
[04:32:38] --- ChanServ gives channel operator status to Kirben
[08:03:34] --> wjp has joined #pentagram
[08:03:34] --- ChanServ gives channel operator status to wjp
[08:19:32] --- wjp is now known as wjp|work
[08:29:20] --> Colourless has joined #Pentagram
[08:29:20] --- ChanServ gives channel operator status to Colourless
[08:30:04] <-- Colourless has left IRC (Client Quit)
[12:53:02] --> Colourless has joined #Pentagram
[12:53:02] --- ChanServ gives channel operator status to Colourless
[13:07:42] --> Dark-Star has joined #pentagram
[13:08:43] <Dark-Star> Hi
[13:08:54] <Colourless> hi
[13:09:24] <Dark-Star> Colourless: you're compiling pentagram with MSVC, aren't you?
[13:10:38] <Colourless> yes
[13:10:50] <Colourless> version 6
[13:11:30] <Dark-Star> is there any reason why you didn't put your project files into CVS? *g*
[13:11:46] <Dark-Star> because I thought you're all using mingw or linux, and so I created a project myself :-/
[13:12:22] <Colourless> sure, there are 'reasons'. mostly that my projects contain a lot of stuff I don't want to put into cvs
[13:13:03] <Dark-Star> hehe ok. maybe you could just send me your msvc_include.h because mine is a bit "hackish"...
[13:13:20] <Dark-Star> ...although I finally managed to put toupper() into namespace std...
[13:14:26] <Colourless> sure i can send it for you
[13:14:34] <Colourless> can't say mine will be any less hackish
[13:14:42] <Colourless> what version of msvc are you using?
[13:15:41] <Dark-Star> 7
[13:16:02] <Colourless> my header may not work with 7
[13:16:24] <Colourless> it does lots and lots of crap to put stuff into namespace std
[13:17:17] <Colourless> i'll send it to you anyway if you want
[13:17:29] <Colourless> try dcc?
[13:17:46] <Dark-Star> yes, just try and send it
[13:18:49] <Colourless> i really don't think the send will work
[13:19:35] <Dark-Star> why not?
[13:19:42] <Dark-Star> aah
[13:19:54] <Colourless> firewall
[13:20:01] <Dark-Star> I got a "file type ignored"...
[13:20:46] <Dark-Star> try again pls
[13:21:46] <Dark-Star> ok, doesn't seem to work. well it's not that important anyway :-)
[13:26:36] <Dark-Star> btw, is MSVC6 also generating such an awful mess of warnings about typecasts to int32?
[13:27:02] <Colourless> no
[13:27:15] <Colourless> are you doing this?
[13:27:17] <Colourless> #define SIZEOF_SHORT 2
[13:27:17] <Colourless> #define SIZEOF_INT 4
[13:27:34] <Dark-Star> yes. but in MSVC7 some of the internal types are 64bit it seems (size_t etc.)
[13:27:35] <Colourless> or are you doing something else to specify what to use as sint32/uint32?
[13:28:01] <Dark-Star> I'm doing:
[13:28:02] <Dark-Star> #define SIZEOF_SHORT 2
[13:28:02] <Dark-Star> #define SIZEOF_INT 4
[13:28:02] <Dark-Star> #define SIZEOF_LONG 4
[13:28:07] <Dark-Star> #define HAVE_SYS_STAT_H
[13:28:10] <Dark-Star> #define S_ISDIR(m) (((m) & S_IFMT) == _S_IFDIR)
[13:28:17] <Dark-Star> #define snprintf _snprintf
[13:28:17] <Dark-Star> #define vsnprintf _vsnprintf
[13:28:21] <Dark-Star> and
[13:28:21] <Dark-Star> namespace std { extern "C" { int toupper(int); }}
[13:29:16] <Colourless> you 'really' don't want to know what my msvc_include.h header looks like :-)
[13:30:11] <Dark-Star> oh. hehe. and I thought that my "#defines" were ugly :-)
[13:30:30] <Colourless> my file is 199 lines long
[13:31:23] <Dark-Star> well, then MSVC7 is really a lot better in ANSI C compliance than MSVC6
[13:31:28] * DarkeZzz remembers his attempts getting vc6 to compile stock ansi c++ that passed by djgpp at the time. He thinks he has an incling of what Colourless' header looks like. *grin*
[13:31:32] <Colourless> indeed
[13:32:25] <Colourless> if you can compile with only 'those' few lines, then MSVC 7 is a hell of a lot more ANSI C++ compliant than MSVC 6
[13:32:49] <Dark-Star> cool :)
[13:33:03] <Colourless> MSVC 6 puts none of the C standard library headers into namespace std
[13:33:37] <Dark-Star> well, it seems that all pointers and size_t are 64bit in MSVC7. And I get a few "comparison between signed and unsigned" warnings
[13:33:49] <Colourless> shouldn't be
[13:34:00] <Colourless> 64bit pointers would 'break' with everything else
[13:34:21] <Colourless> it wouldn't even be compatible with win32
[13:35:03] <Dark-Star> yes, I know, but why do all the functions in IDataSource.h that return int32 trigger this warning "conversion from __w64 int to uint32" then?
[13:35:20] <Dark-Star> for example uint32 IDataSource::getPos()
[13:36:47] <Colourless> eh? IDataSource::getPos() is pure virtual
[13:37:48] <Dark-Star> yeah, I looked in the wrong spot. it's IBufferDataSource
[13:38:41] <Dark-Star> IDataSource.h line 305 triggers this warning
[13:39:35] <Colourless> what warning number?
[13:40:05] <Dark-Star> C4244
[13:40:36] <Dark-Star> 'return' : Conversion from '__w64 int' to 'uint32', possible loss of data (or something like that)
[13:42:13] <Dark-Star> this warning is also in UCStach.h line 43
[13:45:37] <Dark-Star> I stored the complete list of warnings here: http://dark-star.homeftp.org/pentagram_build_warnings.txt
[13:46:01] <Dark-Star> (beware, it's the german version of MSVC7 *g*)
[13:46:02] <Colourless> the C4244 warnings really shouldn't matter
[13:46:38] <Dark-Star> well, they really don't matter because pentagram builds and runs fine
[13:47:45] <Colourless> infact all of those warning don't mean much
[13:48:01] <Dark-Star> funny, warning C4267 is not described in the online help :-)
[13:48:07] <Colourless> yeah i know
[13:48:22] <Colourless> but it appears to be the same warning C4244 anyway
[13:49:06] <Colourless> ok
[13:49:23] <Colourless> are you sure you haven't got "Detect 64-bit Portability Issues" enabled
[13:49:30] <Dark-Star> wait, I'll check...
[13:49:58] * DarkeZzz decides against making any of the half dozen cheap shots at VC++ that he could make. He's a good bunny. *noddle*
[13:50:16] <Colourless> To set this compiler option in the Visual Studio development environment
[13:50:17] <Colourless> Open the project's Property Pages dialog box. For details, see Setting Visual C++ Project Properties.
[13:50:17] <Colourless> Click the C/C++ folder.
[13:50:17] <Colourless> Click the General property page.
[13:50:17] <Colourless> Modify the Detect 64-bit Portability Issues property.
[13:50:33] <Dark-Star> yes, I just disabled it :)
[13:51:27] <Colourless> this page http://msdn.microsoft.com/library/en-us/vccore/html/vchowWp64Detect64BitPortabilityProblems.asp and this page will outline what's going on http://msdn.microsoft.com/library/en-us/vclang/html/vclrf__w64.asp
[13:52:32] <Dark-Star> ok, now there's only one C4244 left (conversion from uint16 to const uint8 in UCMachine.cpp #119) and the various C4018's
[13:53:04] <Colourless> uint16 to const uint8 should probably have a cast
[13:54:00] <Colourless> 4018.... aren't 'too' much of an issue, but they are something that should be fixed
[13:55:01] <wjp|work> hi Ryan
[13:55:29] <wjp|work> hm, MSVC issues?
[13:55:40] <Colourless> not really
[13:56:20] <Colourless> more like MSVC picking up potential issues in the code
[13:56:34] <wjp|work> sounds useful
[13:56:38] <wjp|work> anything interesting?
[13:56:53] <Dark-Star> I guess it won't be an issue until pentagram is ported to a 64 bit machine ...
[13:56:58] * wjp|work oooohs at the nice german warnings :-)
[13:57:32] <Colourless> and there are some signed/unsigned comparisions
[13:57:51] <wjp|work> yeah, IIRC, those are x/width, y/height comparisons
[13:59:02] <Colourless> should all be sint32
[13:59:02] <wjp|work> hm, at least some of these warnings assume 64 bit pointer arithmetic?
[13:59:09] <Colourless> yeah they are
[13:59:28] <Dark-Star> only the first few lines remain after disabling the 64bit portability check
[13:59:36] * wjp|work nods
[13:59:43] <Dark-Star> (up to the uint16 -> const uint8 cast)
[14:00:32] <wjp|work> that one is kind of intentional
[14:00:41] <wjp|work> but it should probably be an explicit cast
[14:22:16] <-- DarkeZzz has left IRC (Read error: 54 (Connection reset by peer))
[14:22:31] --> DarkeZzz has joined #pentagram
[14:37:11] <Colourless> going now
[14:37:16] <-- Colourless has left IRC ("casts invisibility")
[14:47:55] <-- Kirben has left IRC ("System Meltdown")
[15:42:44] <-- DarkeZzz has left IRC ("Inficio-Infeci-Infectum")
[16:11:24] <-- wjp|work has left IRC ("gtg")
[16:34:02] --> wjp has joined #pentagram
[16:34:02] --- ChanServ gives channel operator status to wjp
[17:23:21] --- wjp is now known as wjp_
[17:36:25] --- wjp_ is now known as wjp
[17:38:01] --> Darke has joined #pentagram
[17:38:01] --- ChanServ gives channel operator status to Darke
[17:48:30] --- Darke is now known as DarkeZzz
[18:13:41] --- Dark-Star is now known as Dark-Star|away
[18:16:24] <-- wjp has left IRC ("switching to xchat2")
[18:17:49] --> wjp has joined #pentagram
[18:17:49] --- ChanServ gives channel operator status to wjp
[20:33:21] <wjp> for the logs:
[20:33:35] <wjp> about weapon types: did the mace have its own shape?
[20:33:47] <wjp> if so, our theory about wpnovlay.dat needs some revising
[23:21:05] --> Servus has joined #pentagram
[23:35:02] --- Dark-Star|away is now known as Dark-Star
[23:48:08] <-- wjp has left IRC ("Zzzz...")
[23:53:53] --> Kirben has joined #pentagram
[23:53:53] --- ChanServ gives channel operator status to Kirben