X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=code.c;h=b23a8d8b10ebf23b40cba5fec554cc3d7dd8b648;hb=refs%2Fheads%2Fgraphitemaster%2Fdiagnostics;hp=35f758a22526f966cc00c7a28c45c74c0ee0d43a;hpb=1dce501b7058000e19421af246ec14fd98aceab9;p=xonotic%2Fgmqcc.git diff --git a/code.c b/code.c index 35f758a..b23a8d8 100644 --- a/code.c +++ b/code.c @@ -21,6 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ +#include #include "gmqcc.h" /* @@ -28,7 +29,7 @@ * or qcint; however, it's incredibly unsafe for two reasons. * 1) The compilers aliasing optimization can legally make it unstable * (it's undefined behaviour). - * + * * 2) The cast itself depends on fresh storage (newly allocated in which * ever function is using the cast macros), the contents of which are * transferred in a way that the obligation to release storage is not @@ -141,6 +142,7 @@ static void code_create_header(code_t *code, prog_header *code_header) { code_header->strings.offset = code_header->globals.offset + (sizeof(int32_t) * vec_size(code->globals)); code_header->strings.length = vec_size(code->chars); code_header->version = 6; + code_header->skip = 0; if (OPTS_OPTION_BOOL(OPTION_FORCECRC)) code_header->crc16 = OPTS_OPTION_U16(OPTION_FORCED_CRC); @@ -171,7 +173,7 @@ static void code_create_header(code_t *code, prog_header *code_header) { /* * These are not part of the header but we ensure LE format here to save on duplicated * code. - */ + */ util_endianswap(code->statements, vec_size(code->statements), sizeof(prog_section_statement)); util_endianswap(code->defs, vec_size(code->defs), sizeof(prog_section_def)); util_endianswap(code->fields, vec_size(code->fields), sizeof(prog_section_field)); @@ -183,7 +185,7 @@ static void code_create_header(code_t *code, prog_header *code_header) { * Same principle except this one allocates memory and writes the lno(optional) and the dat file * directly out to allocated memory. Which is actually very useful for the future library support * we're going to add. - */ + */ bool code_write_memory(code_t *code, uint8_t **datmem, size_t *sizedat, uint8_t **lnomem, size_t *sizelno) { prog_header code_header; uint32_t offset = 0;