"Forty years have passed since he came here."
"Forty years has passed since he came here."
Which one is correct?
The plural is more logical because 'years' is plural, but you might hear the singular being used to show that the person is thinling about one period of time.