Pois é, colega! É essa uma interpretação frequente (demasiado frequente) mas errada. A colega tem razão. Essa oração subordinada substantiva é sujeito.
O que leva alguns colegas a defenderem para essa oração subordinada a classificação de complemento direto é a suposição de que o se de diz-se equivale a alguém, e que, por isso, é sujeito do verbo dizer — donde concluem que a oração que se segue seja seu complemento direto. Mas não é assim.
A frase «Diz-se que o João é bom aluno» não corresponde à frase «Alguém diz que o João é bom aluno.».
1. É evidente que o verbo desta frase, dizer, implica sempre um sujeito tácito que o seu autor, por ignorância, ou por opção, não revela. E a sintaxe, ao revelar o sentido da frase – é essa a sua função – não deve tentar adivinhar o que o autor ocultou. O que está na frase é «diz-se», e não «alguém diz».
2. O que, de facto, corresponderia ao sentido da frase seria: «É voz corrente que o João é bom aluno?» Esta alternativa manteria o carácter universalizante da forma diz-se, ao mesmo tempo que respeitava a ocultação dos seus agentes. A função sintática da oração subordinada – sujeito – seria respeitada.
3. O se, como eu venho dizendo há muito tempo, só num caso pode ser sujeito: nas orações reduzidas, como demonstrarei mais abaixo.
4. Em latim, o pronome pessoal reflexo não tinha o caso nominativo. Não se pode, em português, inventar para o se um caso que ele nunca teve.
5. Todos sabemos que o sujeito é sempre predicável. De todo o sujeito se pode predicar, primária e secundariamente. Na frase «O João é bom aluno», há uma predicação primária: «é bom aluno». Podemos inserir nessa frase outra predicação: «João, sempre sorridente, é bom aluno.» Notemos que ficaram agora, na frase, duas afirmações respeitantes ao sujeito, logo, duas predicações do sujeito: uma, principal («é bom aluno»), outra secundária («sempre sorridente»).
6. Analisemos a forma impessoal reflexa diz-se. Será que é possível identificar aquele se com alguém? Já vimos que não (1. e 2.). Será imaginável que aquele se receba um predicativo, assim, por exemplo: *«Diz-se, simpático, que o João é bom aluno»? – ou: *«Se, simpático, diz…» É evidente que não. Aquele se não pode receber qualquer predicativo do sujeito, porque… não é sujeito.
7. Mas o se pode ser sujeito em orações reduzidas – e, nesse caso, terá de admitir predicativos. Será verdade? Tentemos:
Representemos graficamente:
Notemos a oração entre parêntesis reto, em que o -se é, claramente, sujeito. Se o for, já o dissemos, pode receber uma predicação adicional, assim:
Ou:
Sim! Este se é sujeito. Pode, por isso, receber predicação secundária.
Resumindo: a construção impessoal reflexa é formada por um se apassivante e um verbo na terceira pessoa do singular (diz-se, conta-se…). O participante que corresponde ao agente do verbo está oculto, mas o seu referente será sempre uma pessoa indeterminada. Tal frase não pode ser parafraseada por «alguém (ninguém) diz, conta…». A oração que lhe esteja subordinada desempenha a função de sujeito.
– «que o João é bom aluno»: Oração subordinada completiva, substantiva. Suj.: «O João»; pred.: «é bom aluno».
Cf. Em Controvérsias, O se das construções impessoais reflexas.