Friday, April 27, 2012

Plural verb used with singular subject



Today I was reading a programming book and I encountered the following sentence (emphases mine):





In this case, for example, the type that all three compilers report
for param are incorrect.




I'm not an English native speaker but since the very first moment I went through that statement I felt like something didn't flow smoothly:



the subject of the sentence (the type) seems to be singular, however the verb that refers to it (are) is plural. Am I missing anything here?


Answer




There are different interpretations:




  1. All three compilers report the same type, which is incorrect. In that case it should be singular is.


  2. Each compiler reports a different type. So all three types are not correct, but they are not the same either. In that case are is fine.




While each compiler only reports a single type, there are three of them, and so the resulting list of types might contain several different ones or just one and the same.



UPDATE: The text (Scott Meyers' Effective C++) continues with the sentence Furthermore, they're essentially required to be incorrect [...], so with a plural reference. This indicates to me that the author indeed means to refer to the three types; but uses the singular type as each compiler only reports one. It is an interesting usage, though types would probably have been less confusing in this instance.



No comments:

Post a Comment