Retornar no gerador junto com o rendimento no Python 3.3

No Python 2, houve um erro quando o retorno estava junto com o rendimento na definição da função. Mas para este código no Python 3.3

def f():
  return 3
  yield 2

x = f()
print(x.__next__())

não há erro que o retorno seja usado em função com rendimento. No entanto, quando a função__next__ é chamado, então é lançada a exceção StopIteration. Por que não há apenas valor retornado3? Esse retorno é de alguma forma ignorado?

questionAnswers(2)

yourAnswerToTheQuestion