公元前318年,公孙衍组织魏、赵、韩、燕、楚五国伐秦,共推举楚怀王为纵约长,秦国在函谷关与五国联军交战,结果五国联军大败亏输。 秦国在打败五国联军之后,气势正盛,秦惠文王与大臣商讨如何建立王业使列国屈服。在这个问题上出现了分歧。史书记载,张仪主张攻打韩国,劫持周天子,达到“挟天子以令天下”的目的。而另一个靠军功起来的年轻将军司马错提出了反对意见,他认为此举会招来恶名而没有实惠。 秦惠文王听了张仪和司马错的辩论,觉得司马错说的很有道理,随即在公元前316年,命张仪司马错攻伐巴蜀,巴国和蜀国被灭,成为秦国的大粮仓。