Autor Tema: MPLAB X - Unable to resolve identifier  (Leído 11707 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re:MPLAB X - Unable to resolve identifier
« Respuesta #15 en: 20 de Noviembre de 2015, 13:31:28 »
Que ganas de matarlo!
Acabo de empezar con MPLAB X por decima vez. Cada vez que intento ponerme al dia hay algo que me desalienta.
Tengo todo el codigo salpicado de errores y advertencias, y aun asi, compila sin problema.


Hay algunos errores tan "tontos" como avisarme que no encuentra la declaracion de una variable, en la misma linea donde estoy declarando la variable:
short EnergySave = TRUE;   //en la declaracion de una variable me advierte que esa variable que no encuentra ese indentificador declarado ¿?!!!
Alguna sugerencia?
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:MPLAB X - Unable to resolve identifier
« Respuesta #16 en: 20 de Noviembre de 2015, 13:36:28 »
Imposible de saberlo con el screenshot. Podrias dar un ejemplo simple que tenga el problema en cuestion (asi no pasas el programa tuyo por cualquier motivo ) ?

Estuve buscando la directiva #rom y getenv para XC8 y no encontre nada en el manual. Es CCS ?

Imagino que si. Podrias tratar de dehabilitar esos "warnings".
En una de las propiedades, Highlighting  y desabilitar el "Highlight Unresolved Identifiers"



Ademas el MPLAB X es una IDE por como lo estas usando asi que es valido cualquier IDE que te guste. Y como te decia antes, si tenes un ejemplo simple para ver que eso ocurre se puede ver cual es el problema del warning
« Última modificación: 20 de Noviembre de 2015, 13:46:17 por KILLERJC »

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re:MPLAB X - Unable to resolve identifier
« Respuesta #17 en: 10 de Noviembre de 2016, 09:52:36 »
Ya llevo algunos meses que me pase completamente al MPLAB X, y estoy acostumbrandome a su uso.
Pero hay una advertencia que no consigo librarme de ella:
Cuando declaro un #bit en CCS, el IDE no lo reconoce como declarado. Por lo que me muestra una advertencia cuando uso esa declaracion.

* Captura.PNG
(2.21 kB, 279x49 - visto 431 veces)

No quiero quitar la opcion de advertencia, ya que es util para otros casos, pero para este en concreto no va bien.
Supongo que es por que no entiende que #bit es similar a #byte o #define.
No habra alguna forma de hacerselo entender? Creo que arduino por ejemplo permite decirle cuales son palabras clave, y asi te las marca diferente.
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:MPLAB X - Unable to resolve identifier
« Respuesta #18 en: 10 de Noviembre de 2016, 10:35:20 »
Imagino que debe ser por que el MPLAB X esta realizado para XC8 que tiene en su mayoria compatibilidad con cualquier C (define, pragma, entre otros).

CCS tiene directivas de prepocesamiento propias del compilador ( como bit, byte, USE, etc). Es decir es el compilador quien va a decir si esta bien escrito o no y si va a funcionar (al momento de compilar). Pero el MPLAB X es un IDE y es el que te acusa en ese momento que vas escribiendo. Incluso pienso que si lo haces en cualquier IDE que maneje C tendrias el mismo error, por que son directivas unicas de CCS.

Lo que no tengo en cuenta es si existe una forma de agregar directivas al IDE, para que no te las marque, pero no creo que sea posible. Con lo cual lo unico que dbe quedar es desactivarlas.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re:MPLAB X - Unable to resolve identifier
« Respuesta #19 en: 10 de Noviembre de 2016, 13:02:22 »
Gracias Killer, me imaginaba que el funcionamiento del IDE esta hecho para entender y marcar C estandar. Pero el mismo IDE puede tambien marcar Java, HTML, etc... por lo que en algun lugar tiene que estar escrito cuales son las palabras a tener en cuenta, asi como las funciones que desempeñan. Asi poder marcar de acuerdo a ellas.
A decir verdad ya me acostumbre a que me marque advertencias por todo el codigo, ya que compila y funciona igualmente. Pero seria bonito poder ver el codigo "limpio y perfecto" :)
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.