Aller au contenu

CPF7125

La variable &3 ne correspond pas à un pointeur HLL.

Gravité 30 · Erreur grave

Cause

La variable &3 du programme &1 définie comme pointeur, pointeur de référence ou pointeur de base, dans la commande CHGHLLPTR (Modifier un pointeur HLL), ne correspond pas à un pointeur HLL (en langage évolué).

Que faire

Au paramètre ADR, PTR ou REFPTR, indiquez des noms de pointeurs HLL pour toutes les variables de pointeur et pour les pointeurs de base, et indiquez le nom de programme adéquat au paramètre PGM. Relancez ensuite la commande.

Description technique

La variable indiquée n'est peut-être pas déclarée comme pointeur, ou il s'agit peut-être d'un numéro d'ODV ou d'un pointeur interne (et non d'un pointeur HLL). Seuls les pointeurs HLL peuvent être utilisés pour tous les pointeurs indiqués dans la commande Modifier un pointeur de langage de haut niveau (CHGHLLPTR). Si vous avez les droits sur la commande Modifier un pointeur (CHGPTR), vous pouvez l'utiliser pour définir n'importe quelle variable objet de données de type pointeur (même un pointeur interne).

The specified variable may not be declared as a pointer, or it may be an ODV number or internal pointer (not an HLL pointer). Only HLL pointers can be used for all pointers specified on the Change High-Level Language Pointer (CHGHLLPTR) command. If you are authorized to the Change Pointer (CHGPTR) command, you can use it to set any pointer data object variable (even an internal pointer).

Variables du message

Quand le système envoie le message, chaque variable est remplacée par une valeur réelle : un nom d'objet, de bibliothèque, un code...

VariableTypeLongueur
&1 *CHAR 10
&3 *CHAR variable

Sur votre IBM i

Afficher la description complète du message :

DSPMSGD RANGE(CPF7125) MSGF(QSYS/QCPFMSG)

L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :

MONMSG MSGID(CPF7125) EXEC(DO)
  /* traitement de l'erreur */
ENDDO