+typedef struct dprograms_v7_s
+{ //extended header written by fteqcc.
+ dprograms_t v6; //for easier casting.
+
+ //debug / version 7 extensions
+ unsigned int ofsfiles; //ignored. deprecated, should be 0. source files can instead be embedded by simply treating the .dat as a zip.
+ unsigned int ofslinenums; //ignored. alternative to external .lno files.
+ unsigned int ofsbodylessfuncs; //unsupported. function names imported from other modules. must be 0.
+ unsigned int numbodylessfuncs; //unsupported. must be 0.
+
+ unsigned int ofs_types; //unsupported+deprecated. rich type info. must be 0.
+ unsigned int numtypes; //unsupported+deprecated. rich type info. must be 0.
+ unsigned int blockscompressed; //unsupported. per-block compression. must be 0.
+
+ int secondaryversion; //if not known then its kkqwsv's v7, qfcc's v7, or uhexen2's v7, or something. abandon all hope when not recognised.
+#define PROG_SECONDARYVERSION16 ((('1'<<0)|('F'<<8)|('T'<<16)|('E'<<24))^(('P'<<0)|('R'<<8)|('O'<<16)|('G'<<24))) //regular 16bit statements.
+#define PROG_SECONDARYVERSION32 ((('1'<<0)|('F'<<8)|('T'<<16)|('E'<<24))^(('3'<<0)|('2'<<8)|('B'<<16)|(' '<<24))) //statements+globaldefs+fielddefs extended to 32bit.
+}
+dprograms_v7_t;
+