While prior tests work, a new case reveals an error... It appears that if the foreign key is the same as the parent table name, the name-collision avoidance fails. Thanks to Tom Peters for finding this bug.