Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

196
Visualizações
¿Cómo me deshago de esta advertencia de 'advertencia: la expresión no se usa'?

Tratando de averiguar por qué recibo una advertencia en este código.

 object Test { val bar = true operator fun invoke(foo: Test.() -> Boolean): Boolean { return foo() } } fun main(args: Array<String>) { println(Test {bar}) }

Obtienes esto cuando compilas

test.kt:5:12: advertencia: la expresión no se usa
devolver foo()

Pero ciertamente parece ser usado, ya que se vuelve true cuando lo ejecuta.

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Llamar a foo() explícitamente en this hará que la advertencia desaparezca:

1ra manera:

 operator fun invoke(foo: Test.() -> Boolean): Boolean { return this.foo() }

2da manera:

 operator fun invoke(foo: Test.() -> Boolean): Boolean { return foo(this) }

Dado que debería poder omitir this en este contexto, supongo que es un error en el compilador.


Si solo desea que desaparezca la advertencia, puede usar la anotación @Suppress en el nivel de declaración:

 operator fun invoke(foo: Test.() -> Boolean): Boolean { @Suppress("UNUSED_EXPRESSION") return foo() }

Podría hacerlo para todo el archivo, toda la clase o toda la función también, pero es mejor usarlo directamente en la instrucción porque otras expresiones no utilizadas podrían ser realmente un error suyo (y no intencionado) y del compilador. Entonces no te lo contaría.

over 4 years ago · Santiago Trujillo Relatório

0

Este falso positivo que identificó es un problema conocido en Kotlin KT-21282 , por lo que puede aplicar una de las soluciones de Willi o esperar a que JetBrains solucione el error.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda