Also take the spec into account

def special_get_field(self, value, args, kwargs, format_spec=None):
        """Also take the spec into account"""
        if value in self.chain:
            raise BadOptionFormat("Recursive option", chain=self.chain + [value])