i just want to clarify that i'm not exactly arguing against hiring illegals. i'm not taking a nativist or nationalist position here, i'm taking a socialist position that puts the rights of workers ahead of everything else..
so, what i'm saying is that if you're going to hire an illegal then you should pay them the same wages (relative to existing laws), give them the same benefits, etc.
but, when you assert the hiring pre-requisite of treating illegals and citizens equally, what happens is that the illegals lose their competitive advantage and things like language skills make the citizens more appealing.
if you actually put this equal playing field down, and stopped paying migrants less, you would see the demand for illegal labour dry up very quickly and the flow of migrants would essentially stop. but, the thing is that nobody actually wants this except the subclass of workers that is getting priced out - it doesn't fit the aims of capital (who always want to lower wages), and it doesn't fit the aim of the consumer class (who always want lower prices).
but, my position is not about building walls or shutting out the outside world. it's about enforcing labour regulations, and stopping the exploitation of migrant labour.