Learn English – grammatical rule impeding the presence of ‘for’ in “I have lived here ‘for’ all the life”

grammaticality

  1. I have lived here all my life.
  2. I have lived here for all my life.

Yes, 1 is perfectly 'standard' English, but I wonder why one cannot add for to 1 before 'all my life'?

Is there a grammatical rule governing this matter? If so, can anybody explain such rule?

I'm asking because in my language, as far as I know, both 1 and 2 are acceptable, with and without for (per).

Best Answer

I think you just have to accept that when all comes before words that express any length of time, it cannot be preceded by for.