ok, i've narrowed down a large amount of the problems with the bitfields src files to the CAN_SEE macro, or rather, to one of the macros used by the CAN_SEE macro. what i don't understand, however, is that all the macros used by CAN_SEE look exactly like the ones in the regular circle source... the warnings are: warning: suggest parentheses around && within || and the line numbers given correspond to any of a number of macros that all call CAN_SEE (CAN_SEE itself, CAN_SEE_OBJ, PERS). since all the CAN_SEE macros are exactly as they appear in the source code, i can only assume it has something to do with using bitfields instead of bitvectors. only, i don't know why that may be... :P here's the only nested macro that is different from the regular src code: #define IS_AFFECTED(ch, bit) (AFF_FLAGGED(ch, bit)) #define AFF_FLAGGED(ch, flag) AFF_FLAGS(ch).flag #define AFF_FLAGS(ch) ((ch)->char_specials.saved.affected_by) the affected_by is of type struct affections which looks like: struct affections { BIT(AFF_BLIND); BIT(AFF_INVISIBLE); etc. }; and the BIT macro itself is: #define BIT(name) unsigned int name: 1 only, it doesn't seem to me there could be anything in there that could warrant the && within || warning, but then i don't know anything about bitfields :P anybody have any ideas? +-----------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://cspo.queensu.ca/~fletcher/Circle/list_faq.html | +-----------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/18/00 PST