[R] $iIDFrom: declared, but not used in func

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
jpascal
Niveau 6
Niveau 6
Messages : 226
Enregistré le : jeu. 16 oct. 2008 16:21
Status : Hors ligne

[R] $iIDFrom: declared, but not used in func

#1

Message par jpascal »

Lorsque je lance AU3Check avec les paramètres -q -d -w 1 -w 2 -w 3 -w- 4 -w 5 -w 6 -w- 7, j'obtiens à chaque fois cet avertissement avec les fonctions WM_COMMAND(), WM_NOTIFY(), etc... :
warning: $iIDFrom: declared, but not used in func.
Local $hWndFrom, $iIDFrom,
~~~~~~~~~~~~~~~~~~~~~~~~~^
Pourtant la variable $iIDFrom est bien utilisée. :x

Code : Tout sélectionner

Func WM_COMMAND($hwnd, $iMsg, $wParam, $lParam)
	#forceref $hwnd, $iMsg
	Local $hWndFrom, $iIDFrom, $iCode
	$hWndFrom = $lParam
	$iIDFrom = BitAND($wParam, 0xFFFF) ; Low Word
	$iCode = BitShift($wParam, 16) ; Hi Word
	Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_COMMAND
Sauriez-vous pourquoi et connaitriez-vous un moyen de ne pas afficher cet avertissement ?
Modifié en dernier par jpascal le jeu. 20 sept. 2018 12:28, modifié 1 fois.
AutoIt 3.3.16.1 - AutoIt3Wrapper 21.316.1639.1
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] $iIDFrom: declared, but not used in func

#2

Message par mikell »

ça se produit quand la variable est déclarée, qu'elle a une valeur assignée, mais qu'elle n'est pas utilisée ensuite dans la fonction (pour effectuer un calcul ou autre). Dans ce cas on peut utiliser #forceref sur la variable après l'assignation
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
jpascal
Niveau 6
Niveau 6
Messages : 226
Enregistré le : jeu. 16 oct. 2008 16:21
Status : Hors ligne

Re: [..] $iIDFrom: declared, but not used in func

#3

Message par jpascal »

Mais cette ligne $iIDFrom = BitAND($wParam, 0xFFFF) n'est pas considérée comme un calcul ?
AutoIt 3.3.16.1 - AutoIt3Wrapper 21.316.1639.1
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] $iIDFrom: declared, but not used in func

#4

Message par mikell »

Faut croire que non :mrgreen:
Utilise #forceref sur la variable après l'assignation
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2272
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] $iIDFrom: declared, but not used in func

#5

Message par jchd »

Si l'on réalise un calcul comme dans la ligne en cause et qu'on n'emploie jamais le résultat, autant ne pas effectuer ce calcul.
C'est le sens de cet avertissement.

Dans le corps d'une fonction de gestion de stock, je m'amuse à calculer la vitesse de libération de la planète Vénus mais je n'emploie pas ce résultat, ne le communique nulle part et m'empresse de l'oublier. Au3Check est assez sympa pour me dire "Dis voir, t'es vraiment certain que c'est utile ton truc, là ?"
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
jpascal
Niveau 6
Niveau 6
Messages : 226
Enregistré le : jeu. 16 oct. 2008 16:21
Status : Hors ligne

Re: [..] $iIDFrom: declared, but not used in func

#6

Message par jpascal »

Merci pour vos réponses claires et précises. :-)
AutoIt 3.3.16.1 - AutoIt3Wrapper 21.316.1639.1
Répondre