listrestrict.c: In function ‘listrestrict_overridejoin’: listrestrict.c:284:20: error: wrong type argument to unary exclamation mark if(!fchanEntry || !fchanEntry->banact) { ^ listrestrict.c:299:3: warning: implicit declaration of function ‘place_host_ban’ [-Wimplicit-function-declaration] place_host_ban(client, fchanEntry->banact, "Invalid channel", muhcfg.ban_time); ^~~~~~~~~~~~~~ listrestrict.c: In function ‘listrestrict_configtest’: listrestrict.c:471:13: error: incompatible types when assigning to type ‘BanAction’ {aka ‘struct BanAction’} from type ‘BanActionValue’ {aka ‘enum BanActionValue’} banact = banact_stringtoval(cep2->value); ^ listrestrict.c:472:9: error: wrong type argument to unary exclamation mark if(!banact) { ^ In file included from /home/ircd/unrealircd-6.1.2.3/include/unrealircd.h:7, from listrestrict.c:25: /home/ircd/unrealircd-6.1.2.3/include/struct.h:1206:34: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) #define IsSoftBanAction(x) ((x == BAN_ACT_SOFT_GLINE) || (x == BAN_ACT_SOFT_KLINE) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1206:63: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) #define IsSoftBanAction(x) ((x == BAN_ACT_SOFT_GLINE) || (x == BAN_ACT_SOFT_KLINE) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1207:34: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_SHUN) || (x == BAN_ACT_SOFT_KILL) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1207:62: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_SHUN) || (x == BAN_ACT_SOFT_KILL) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1208:34: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_TEMPSHUN) || (x == BAN_ACT_SOFT_VIRUSCHAN) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1208:66: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_TEMPSHUN) || (x == BAN_ACT_SOFT_VIRUSCHAN) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1209:34: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_DCCBLOCK) || (x == BAN_ACT_SOFT_BLOCK) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1209:66: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_DCCBLOCK) || (x == BAN_ACT_SOFT_BLOCK) || \ ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ /home/ircd/unrealircd-6.1.2.3/include/struct.h:1210:34: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) (x == BAN_ACT_SOFT_WARN)) ^~ listrestrict.c:478:9: note: in expansion of macro ‘IsSoftBanAction’ if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~~~~~~~~~~~~~~ listrestrict.c:478:43: error: invalid operands to binary == (have ‘BanAction’ {aka ‘struct BanAction’} and ‘int’) if(IsSoftBanAction(banact) || banact == BAN_ACT_WARN) { ^~ listrestrict.c: In function ‘listrestrict_configrun’: listrestrict.c:616:16: error: incompatible types when assigning to type ‘BanAction’ {aka ‘struct BanAction’} from type ‘int’ fchanBanact = 0; ^ listrestrict.c:644:18: error: incompatible types when assigning to type ‘BanAction’ {aka ‘struct BanAction’} from type ‘BanActionValue’ {aka ‘enum BanActionValue’} fchanBanact = banact_stringtoval(cep2->value); ^ make[5]: *** [Makefile:46: custommodule] Error 1