Branch: Tag:

2021-07-04

2021-07-04 15:56:57 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler [Typechecker]: Added type operators set_car and set_cdr.

Also improves robustness regarding NULL in types.

156:    */    PIKE_T_OPERATOR = 0x0080,    PIKE_T_FIND_LFUN = 0x0180, /* Look up an lfun in an object type. */ +  PIKE_T_SET_CAR = 0x8280, /* Set the CAR of the CAR type to CDR. */ +  PIKE_T_SET_CDR = 0x8380, /* Set the CDR of the CAR type to CDR. */       PIKE_T_TRANSITIVE = 0x00c0, /* Repeatedly apply a function type. */   
403:   #define tUtf8Str tAttr("utf8", tStr8)      #define tFindLFun(X, LFUN) "\200\001" X LFUN "\0" + #define tSetCar(X, Y) "\200\202" X Y + #define tSetCdr(X, Y) "\200\203" X Y      #define tTransitive(X, Y) "\300" X Y