Ca résiste sans problème au retour à la ligne. Mais pas aux commentaires contenant ce caractère:
printk(KERN_DEBUG "%s: Encryption failed: len=%d.\n", /* ugly hack ; must be rewritten*/
ieee->dev->name, frag->len);
Pour ce genre de besoin, il faut une sorte de parser C simplifié. Le faire en awk est je pense possible. Sinon flex/bison est vraiment fait pour (bonjour la doc si tu débutes).
Quelle que soit la solution utilisée, il ne faut pas que le code soit compliqué.
Exemple avec erreur à la compilation une fois que c'est passé à la moulinette:
if ( truc() && printk(KERN_DEBUG "%s: Encryption failed: len=%d.\n", ieee->dev->name, frag->len) ) {
blah;
}
/* oui, c'est crade. Mais c'est valide */
Exemple avec bug:
result = printk(KERN_DEBUG "%s: Encryption failed: len=%d.\n", ieee->dev->name, frag->len);
if (result<=0 && errorstop=true) {
blah;
}
[^] # Re: And ze winner iz:
Posté par Kerro . En réponse au message Supprimer tous les appels d'une fonction dans l'ensemble du code source. Évalué à 2.
printk(KERN_DEBUG "%s: Encryption failed: len=%d.\n", /* ugly hack ; must be rewritten*/
ieee->dev->name, frag->len);
Pour ce genre de besoin, il faut une sorte de parser C simplifié. Le faire en awk est je pense possible. Sinon flex/bison est vraiment fait pour (bonjour la doc si tu débutes).
Quelle que soit la solution utilisée, il ne faut pas que le code soit compliqué.
Exemple avec erreur à la compilation une fois que c'est passé à la moulinette:
if ( truc() && printk(KERN_DEBUG "%s: Encryption failed: len=%d.\n", ieee->dev->name, frag->len) ) {
blah;
}
/* oui, c'est crade. Mais c'est valide */
Exemple avec bug:
result = printk(KERN_DEBUG "%s: Encryption failed: len=%d.\n", ieee->dev->name, frag->len);
if (result<=0 && errorstop=true) {
blah;
}