How do I make Polyspace understand a dereferenced pointer function parameter?
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
bcoover
le 13 Jan 2017
Modifié(e) : Alexandre De Barros
le 25 Jan 2017
The project I'm analyzing has functions that have dereferenced pointers as the parameters:
extern void func( Custom_Type &func_param );
where "Custom_Type" is a typedef-ed struct object. Lines like this give me a
extern void func( Custom_Type &func_param );
^ Expected a ")"
error in Polyspace (Bug Finder) in front of where the ampersand (&) is located. I was able to fix this error by changing the
&func_param --> * func_param
in place with the processing script option, but then that just leads to numerous errors complaining about types not matching (which makes perfect sense since the parameter type was changed).
Is there a way to inform Polyspace that the parenthesis it's expecting is at the end of the line and that the dereferenced pointer is valid?
1 commentaire
Chinmayi Lanka
le 20 Jan 2017
The issue might be with the Custom_Type. Is the Custom_Type known to Polyspace?
Réponse acceptée
Alexandre De Barros
le 24 Jan 2017
Modifié(e) : Alexandre De Barros
le 25 Jan 2017
Hello,
In C, this syntax
extern void func( Custom_Type &func_param );
is not valid.
I guess that you should use the C++ mode of Polyspace, because the & character in a declaration represents a reference in C++.
Best regards,
Alexandre
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Bug Finder Analysis dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!