rem: if (check_inverse(optarg, &invert)) optind++;
add: check_inverse(optarg, &invert, &optind, 0);
context: parse(int c, char **argv, int invert, unsigned int *flags,      const struct ip6t_entry *entry,      unsigned int *nfcache,      struct ip6t_entry_match **match){	struct ip6t_ipv6header_info *info = (struct ip6t_ipv6header_info *)(*match)->data;	switch (c) {		case '1' : 			/* Parse the provided header names */			if (*flags & IPV6_HDR_HEADER)				exit_error(PARAMETER_PROBLEM,					"Only one `--header' allowed");			if (check_inverse(optarg, &invert))				optind++;			if (! (info->matchflags = parse_header(argv[optind-1])) )				exit_error(PARAMETER_PROBLEM, "ip6t_ipv6header: cannot parse header names");			if (invert) 				info->invflags |= 0xFF;			*flags |= IPV6_HDR_HEADER;			break;		case '2' : 			/* Soft-mode requested? */			if (*flags & IPV6_HDR_SOFT)				exit_error(PARAMETER_PROBLEM,					"Only one `--soft' allowed");			info->modeflag |= 0xFF;			*flags |= IPV6_HDR_SOFT;			break;		default:			return 0;	}	return 1;}