But hypothetically, what would you call a situation where 20 companies would all be willing to pay salaries of $1 million/year to fill 10,000 open positions that required 5 years of training, but there are only 5,000 people who have that training? Would that be a "labor shortage"?
It seems your solution works for companies willing to pay more to poach from other companies, but might not work in situations where all of them need more skilled labor now.
Also, the $1M/year illustrates a point...why not $10 million or $100 million/year? At some point, the salaries are indeed "high enough" but the skills still just aren't available to hire.