Learn English – Do we use “would do” or “would have done” after “if it wasn’t/weren’t for…”

conditional-constructionsword-usage

In dictionary,

if it wasn’t/weren’t for…:

used to say that somebody/something stopped somebody/something from
happening

[1] If it weren't for you, I wouldn't be alive today.*

It seems like conditional sentence type 2 – unreal at the present time. But I saw these in another site:

We use if it was / were not for + noun to say that one situation is
dependent on another situation.

[2] If it wasn’t / weren’t for the fireman, my dog would have died in
the fire.

[3] If it hadn’t been for my parents, I wouldn’t have gone to
university.

The example [3] is Conditional sentence Type 3, unreal in the past.

If the example [2] is Conditional sentence Type 2, then why they use "would have died" in the main clause & "was/were" in the conditional clause?

So, is this sentence wrong: If it wasn’t / weren’t for the fireman, my dog would have died in the fire.?

Because if it is Conditional sentence Type 2, then why they use "would have died" in the main clause & "was/were" in the conditional clause?

Anh here says:

but for=if it were not for

He would have played but for a knee injury. (it uses "would have played" in the main clause but it uses "were" in the conditional clause )

Best Answer

  1. Some exclusively use "If it were not for" both for the present and for the past.
  2. Others use "If it had not been for" for the past, and "If it were not for" for the present.

Consider the attitude (1) as an idiom; take it as-is. In addition to your example [1] (it's OALD), Oxford Dictionary takes this attitude. See its examples in "were it not for".

Those of the case (2) include Longman. The book "Practical English Usage" by Michael Swan, edition y2016, item 244.3 says:

To talk about the past we use If it had not been for.
  If it hadn't been for your help, I don't know what I'd have done.

Perhaps usage has changed, but I can't confirm it.

Related Topic