Analyzing nested constructor patterns