I'm starting to clean up the libdx code as mentioned in an earlier
statement. I have found some real oddities and would like someone to
explain some things if they could. I know "C" and "C++" but I'm not sure
about some of the syntax that the compiler is also questioning. For
example, in message.c line 171 the following exists.

static char _ErrorMessage[2000] = {  NULL };


What the hey? A static char array is going to have an address (you don't
want that address as NULL). I think what they are trying to do is say
start it out initialized as something, but what? If you want the whole
array initialized to something, how exactly would you do that (I've
always used calloc).

As I clean things up, I'm getting more and more core dumps. I think that
there is definitely some memory problems with this code. At some places,
I'm suprised that it compiles and runs. Its as if the functions were
almost written and then used. One place that does have me really
concerned is in memory.c. I get the following warnings from the
compiler:

memory.c: In function `getfree':
memory.c:647: warning: statement with no effect
memory.c: In function `getpool':
memory.c:669: warning: statement with no effect
memory.c: In function `amalloc':
memory.c:819: warning: statement with no effect
memory.c:822: warning: statement with no effect
memory.c:833: warning: statement with no effect
memory.c:841: warning: statement with no effect
memory.c: In function `afree':
memory.c:858: warning: statement with no effect

If you look at those statements, they are trying to increment some kind
of counter (ie I think its the memory used, etc.) But the compiler is
telling me that this isn't happening (eeeeooooowww!!) Somebody please
look at this code and tell me why?!

David

Reply via email to