def split_warnings(warnings):
    """Split full warning text into individual warnings."""
    current = []
    for line in warnings.split('\n'):
        line = line.strip()
        if not line:
            continue
        current.append(line)
        if line.endswith(']') and '[-W' in line:
            yield '\n'.join(current)
            current = []
    if current:
        yield '\n'.join(current)
