Domanda

Durante il controllo del mio codice con Splint, ho avuto un problema. All'inizio ho ricevuto un errore su posixlib. Quindi eseguo la stecca con +posixlib come segue,

splint mss_client_main.c +posixlib -I ../include/

Ma ho ricevuto il seguente errore:

Splint 3.1.1 --- 15 giugno 2004

/usr/include/arpa/inet.h:35:27: Parse Error. (For help on parse errors, see
               splint -help parseerrors.)
*** Cannot continue.

Come risolvere questo errore?

È stato utile?

Soluzione

Il tuo codice si compila?

Questo tipo di errore di solito significa che la riga immediatamente precedente:

#include "inet.h"

Ha un errore, come un punto e virgola mancante o superfluo, una macro con parentesi mancanti o qualche altra violazione della sintassi facile da miss. Il compilatore prenderà quasi sempre questo.

Se il tuo codice si compila, vengono in mente due cose:

Alcuni checker di codice statici come Splint non piacciono le intestazioni di sistema. Imposta la tua configurazione in modo che le directory di sistema vengano ignorate. Controlla le pagine di uomo o informazione per la sintassi corretta.

Meno probabile: il tuo inet.h o qualche file che include è corrotto. È insolito, ma abbastanza semplice da verificare. La reinstallazione del pacchetto pertinente correggerà questo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top