Fix GCC 10 compatibility issue

This commit is contained in:
Jeremiah Orians 2020-11-15 20:28:33 -05:00
parent 67dbbbdcfc
commit 1975d88581
No known key found for this signature in database
GPG Key ID: 5410E91C14959E87
9 changed files with 88 additions and 20 deletions

20
cc.h
View File

@ -83,22 +83,4 @@ struct token_list
};
};
/* What types we have */
struct type* global_types;
struct type* prim_types;
/* What we are currently working on */
struct token_list* global_token;
/* Output reorder collections*/
struct token_list* output_list;
struct token_list* strings_list;
struct token_list* globals_list;
/* Make our string collection more efficient */
char* hold_string;
int string_index;
/* Our Target Architecture */
int Architecture;
int register_size;
#include "cc_globals.h"

37
cc_globals.c Normal file
View File

@ -0,0 +1,37 @@
/* Copyright (C) 2016 Jeremiah Orians
* Copyright (C) 2020 deesix <deesix@tuta.io>
* This file is part of M2-Planet.
*
* M2-Planet is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* M2-Planet is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
*/
/* What types we have */
struct type* global_types;
struct type* prim_types;
/* What we are currently working on */
struct token_list* global_token;
/* Output reorder collections*/
struct token_list* output_list;
struct token_list* strings_list;
struct token_list* globals_list;
/* Make our string collection more efficient */
char* hold_string;
int string_index;
/* Our Target Architecture */
int Architecture;
int register_size;

37
cc_globals.h Normal file
View File

@ -0,0 +1,37 @@
/* Copyright (C) 2016 Jeremiah Orians
* Copyright (C) 2020 deesix <deesix@tuta.io>
* This file is part of M2-Planet.
*
* M2-Planet is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* M2-Planet is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
*/
/* What types we have */
extern struct type* global_types;
extern struct type* prim_types;
/* What we are currently working on */
extern struct token_list* global_token;
/* Output reorder collections*/
extern struct token_list* output_list;
extern struct token_list* strings_list;
extern struct token_list* globals_list;
/* Make our string collection more efficient */
extern char* hold_string;
extern int string_index;
/* Our Target Architecture */
extern int Architecture;
extern int register_size;

View File

@ -25,7 +25,7 @@ CFLAGS:=$(CFLAGS) -D_GNU_SOURCE -O0 -std=c99 -ggdb
all: M2-Planet
M2-Planet: bin results cc.h cc_reader.c cc_strings.c cc_types.c cc_core.c cc.c
M2-Planet: bin results cc.h cc_reader.c cc_strings.c cc_types.c cc_core.c cc.c cc_globals.c cc_globals.h
$(CC) $(CFLAGS) \
functions/match.c \
functions/in_set.c \
@ -41,6 +41,7 @@ M2-Planet: bin results cc.h cc_reader.c cc_strings.c cc_types.c cc_core.c cc.c
cc_core.c \
cc.c \
cc.h \
cc_globals.c \
gcc_req.h \
-o bin/M2-Planet
@ -60,6 +61,7 @@ M2-minimal: bin results cc.h cc_reader.c cc_strings.c cc_types.c cc_core.c cc-mi
cc_core.c \
cc-minimal.c \
cc.h \
cc_globals.c \
gcc_req.h \
-o bin/M2-minimal

View File

@ -32,6 +32,7 @@ set -ex
-f functions/require.c \
-f test/common_aarch64/functions/fixup.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \
@ -79,6 +80,7 @@ then
-f functions/string.c \
-f functions/require.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \

View File

@ -31,6 +31,7 @@ set -ex
-f functions/require.c \
-f test/common_amd64/functions/fixup.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \
@ -78,6 +79,7 @@ then
-f functions/string.c \
-f functions/require.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \

View File

@ -31,6 +31,7 @@ set -ex
-f functions/require.c \
-f functions/fixup.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \
@ -78,6 +79,7 @@ then
-f functions/string.c \
-f functions/require.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \

View File

@ -31,6 +31,7 @@ set -ex
-f functions/require.c \
-f functions/fixup.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \
@ -72,6 +73,7 @@ then
-f functions/string.c \
-f functions/require.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \

View File

@ -31,6 +31,7 @@ set -ex
-f functions/require.c \
-f functions/fixup.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \
@ -78,6 +79,7 @@ then
-f functions/string.c \
-f functions/require.c \
-f cc.h \
-f cc_globals.c \
-f cc_reader.c \
-f cc_strings.c \
-f cc_types.c \