A name that was not declared infix was used as infix.
datatype t = C of int * int
fun bad (a C b) = a + b
(** ^ non-infix name used as infix *)
Use the name as non-infix, or declare the name as infix.
datatype t = C of int * int
fun useAsNonInfix (C (a, b)) = a + b
infix C
fun useAsInfix (a C b) = a + b