Hi there, gprolog.h defines macros such as #define B (((WamWordP *) reg_bank)[NB_OF_X_REGS+0]) #define H (((WamWordP *) reg_bank)[NB_OF_X_REGS+1]) #define CP (((WamCont *) reg_bank)[NB_OF_X_REGS+3]) #define E (((WamWordP *) reg_bank)[NB_OF_X_REGS+4]) #define CS (((WamWordP *) reg_bank)[NB_OF_X_REGS+5]) #define S (((WamWordP *) reg_bank)[NB_OF_X_REGS+6]) #define STAMP (((WamWord *) reg_bank)[NB_OF_X_REGS+7]) which then remain in the namespace. The probability of conclict with user's code is quite high, and I have been bitten a couple of times already. Can something be done about that? All the best, Roberto -- Prof. Roberto Bagnara Computer Science Group Department of Mathematics, University of Parma, Italy http://www.cs.unipr.it/~bagnara/ mailto:bagnara@cs.unipr.it