Consider the following example:
#lang racket (match \'(cat . doge) [`(,a . ,b) (match b [a #t] [_ #f])] [_ \"Not a pair\"])
T
Use ==:
(match '(cat . doge) [`(,a . ,b) (match b [(== a) #t] [_ #f])] [_ "Not a pair"])
Due to the placement in the docs, == is easy to overlook.