oppugner

noun
  1. a person who opposes or attacks something, especially an argument, belief, or position
  2. Usage: formal; archaic or literary

Examples