Por que quando crio um Record como o exemplo abaixo ele não da o erro "Non-canonical record constructor must delegate to another constructor"
public record DadosCadastroTopico(
Long id,
String titulo,
String mensagem,
LocalDateTime dataCriacao
) {
public DadosCadastroTopico(Topico topico) {
this(topico.getId(), topico.getTitulo(), topico.getMensagem(), topico.getDataCriacao());
}
}
Porem quando crio do outro jeito da esse erro
public record DadosCadastroTopico(
Long id,
String titulo,
String mensagem,
LocalDateTime dataCriacao
) {
public DadosCadastroTopico(Topico topico) {
this.id = topico.getId(),
this.titulo = topico.getTitulo(),
this.mensagem = topico.getMensagem(),
this.dataCriacao = topico.getDataCriacao());
}
}