Please help me understand this syntax quirk

You haven’t specified size of n1. Make it <<n1 :: binary, ?_>> and it should do.