Ok, this should help a bit w/ the first error I was clueless about
earlier :D I dug this up from google...

could someone explain what this warning is...
(and how to remove it)
'=' : 'int ' differs in levels of indirection from 'char *'

Thanks,

Lemme guess - you have a line likeif (myptr = 0) or similar, right? What
the compiler is telling you is that you shouldn't directly compare a
char* and an int, as they aren't the same type of variable. Depending on
your compiler, you can PROBABLY remove that warning by replacing the 0
with NULL, or you can explicitly cast 0 to a char* like so:if (myptr =
(char*)0)

With that in mind, it would appear that your ch->wiznet is most likely
declared as const BITMASK * in your header file... the rest of that
error shows that your flag field in the wiznet_table is declared as
sh_int... where you might want to start looking is at how the various
other flag tables are defined... if I remember correctly, wiznet is sort
of different than the rest, being defined as type wiznet_flag_type
instead of regular flag_type... compare how each type declares its flag
field, and you'll probably find out why wiznet is the only one giving
you a problem...

Hope that helps...

Richard Lindsey.

-----Original Message-----
From: omar miisa [mailto:[EMAIL PROTECTED] 
Sent: Thursday, May 26, 2005 3:26 PM
To: [email protected]
Subject: runters unlimited bits code

Hey, i was just putting in runters unlimited bits code and i hit a snag
i
was hoping you guys could help me out with. i was changing my IS_SET('s
to
is_set(&'s and i get this warning that i dont know how to fix, heres
the chunk of code in do_wiznet:

       for (flag = 0; wiznet_table[flag].name != NULL; flag++)
           if (is_set(&ch->wiznet,wiznet_table[flag].flag))
           {
                       strcat(buf,wiznet_table[flag].name);
                       strcat(buf," ");
           }

the warning is this:
'sh_int' differs in levels of indirection from 'const BITMASK *'

it worked fine for everything else though.

one more quick question about free_mem, is this function:

// Frees your bitmask. Safe to call dry. Returns 2 if
// it frees anything. 1 if it doesn't.
int free_bitmask(BITMASK *pBmask) {
   BMlist *pBMlist, *next;
   int found = 1;
   for(pBMlist = pBmask->int_list;pBMlist;pBMlist = next) {
       next = pBMlist->next;
       free_mem(pBMlist);
       found = 2;
   }
   return found;
}

free_mem doesnt have all the parameters it requires for me(Rot) and i
dont quite understand what the second parameter is for...


heres the top of my free_mem, perhaps someone can point me in the right 
direction?

void free_mem( void *pMem, int sMem )
{
   int iList;
   int *magic;

   (char *) pMem -= sizeof(*magic);
   magic = (int *) pMem;



anyway, thanks for your time and any help,

_________________________________________________________________
Don't just Search. Find! http://search.sympatico.msn.ca/default.aspx The
new 
MSN Search! Check it out!

-- 
ROM mailing list
[email protected]
Unsubscribe here ->>> http://www.rom.org/cgi-bin/mailman/listinfo/rom

Reply via email to