├── .gitignore ├── C-Documentation.pdf ├── LICENSE ├── README.md ├── examples ├── Makefile ├── bin │ └── stub └── src │ ├── ex1.c │ ├── ex2.c │ ├── ex3.c │ ├── ex4.c │ ├── ex5.c │ ├── ex6.c │ └── ex7.c └── src ├── .deps ├── error.Po ├── main.Po ├── parser.Po ├── preprocessor.Po ├── scanner.Po ├── symbol.Po └── utils.Po ├── Makefile ├── compiler ├── Makefile ├── drivers │ ├── error │ │ └── make_err.c │ ├── parser │ │ └── get_token.c │ ├── preprocessor │ │ ├── fseek_test.c │ │ ├── get_inc_fname.c │ │ └── get_next_word.c │ ├── scanner │ │ ├── extract_token.c │ │ ├── get_lexeme.c │ │ ├── get_token.c │ │ ├── is_valid_id.c │ │ ├── return_string.c │ │ └── write_token.c │ ├── semantic │ │ └── stub │ ├── symbol │ │ └── is_keyword.c │ └── utils │ │ ├── bsearch.c │ │ ├── fcpeek.c │ │ ├── get_column.c │ │ ├── get_files_from_argv.c │ │ ├── get_filesize.c │ │ ├── getword.c │ │ ├── scan_for_o.c │ │ └── strip_whitesp.c ├── error.c ├── error.h ├── main.c ├── main.h ├── parser.c ├── parser.h ├── preprocessor.c ├── preprocessor.h ├── scanner.c ├── scanner.h ├── symbol.c ├── symbol.h ├── utils.c └── utils.h └── cvm ├── Makefile ├── cvm.c ├── cvm.h └── drivers └── main.c /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/.gitignore -------------------------------------------------------------------------------- /C-Documentation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/C-Documentation.pdf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/README.md -------------------------------------------------------------------------------- /examples/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/Makefile -------------------------------------------------------------------------------- /examples/bin/stub: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/src/ex1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/src/ex1.c -------------------------------------------------------------------------------- /examples/src/ex2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/src/ex2.c -------------------------------------------------------------------------------- /examples/src/ex3.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/src/ex3.c -------------------------------------------------------------------------------- /examples/src/ex4.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/src/ex4.c -------------------------------------------------------------------------------- /examples/src/ex5.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/src/ex5.c -------------------------------------------------------------------------------- /examples/src/ex6.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/examples/src/ex6.c -------------------------------------------------------------------------------- /examples/src/ex7.c: -------------------------------------------------------------------------------- 1 | int main() 2 | { 3 | printf("Hello World!"); 4 | } 5 | -------------------------------------------------------------------------------- /src/.deps/error.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/error.Po -------------------------------------------------------------------------------- /src/.deps/main.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/main.Po -------------------------------------------------------------------------------- /src/.deps/parser.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/parser.Po -------------------------------------------------------------------------------- /src/.deps/preprocessor.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/preprocessor.Po -------------------------------------------------------------------------------- /src/.deps/scanner.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/scanner.Po -------------------------------------------------------------------------------- /src/.deps/symbol.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/symbol.Po -------------------------------------------------------------------------------- /src/.deps/utils.Po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/.deps/utils.Po -------------------------------------------------------------------------------- /src/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/Makefile -------------------------------------------------------------------------------- /src/compiler/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/Makefile -------------------------------------------------------------------------------- /src/compiler/drivers/error/make_err.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/error/make_err.c -------------------------------------------------------------------------------- /src/compiler/drivers/parser/get_token.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/parser/get_token.c -------------------------------------------------------------------------------- /src/compiler/drivers/preprocessor/fseek_test.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/preprocessor/fseek_test.c -------------------------------------------------------------------------------- /src/compiler/drivers/preprocessor/get_inc_fname.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/preprocessor/get_inc_fname.c -------------------------------------------------------------------------------- /src/compiler/drivers/preprocessor/get_next_word.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/preprocessor/get_next_word.c -------------------------------------------------------------------------------- /src/compiler/drivers/scanner/extract_token.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/scanner/extract_token.c -------------------------------------------------------------------------------- /src/compiler/drivers/scanner/get_lexeme.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/scanner/get_lexeme.c -------------------------------------------------------------------------------- /src/compiler/drivers/scanner/get_token.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/scanner/get_token.c -------------------------------------------------------------------------------- /src/compiler/drivers/scanner/is_valid_id.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/scanner/is_valid_id.c -------------------------------------------------------------------------------- /src/compiler/drivers/scanner/return_string.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/scanner/return_string.c -------------------------------------------------------------------------------- /src/compiler/drivers/scanner/write_token.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/scanner/write_token.c -------------------------------------------------------------------------------- /src/compiler/drivers/semantic/stub: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/compiler/drivers/symbol/is_keyword.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/symbol/is_keyword.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/bsearch.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/bsearch.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/fcpeek.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/fcpeek.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/get_column.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/get_column.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/get_files_from_argv.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/get_files_from_argv.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/get_filesize.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/get_filesize.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/getword.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/getword.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/scan_for_o.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/scan_for_o.c -------------------------------------------------------------------------------- /src/compiler/drivers/utils/strip_whitesp.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/drivers/utils/strip_whitesp.c -------------------------------------------------------------------------------- /src/compiler/error.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/error.c -------------------------------------------------------------------------------- /src/compiler/error.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/error.h -------------------------------------------------------------------------------- /src/compiler/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/main.c -------------------------------------------------------------------------------- /src/compiler/main.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/main.h -------------------------------------------------------------------------------- /src/compiler/parser.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/parser.c -------------------------------------------------------------------------------- /src/compiler/parser.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/parser.h -------------------------------------------------------------------------------- /src/compiler/preprocessor.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/preprocessor.c -------------------------------------------------------------------------------- /src/compiler/preprocessor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/preprocessor.h -------------------------------------------------------------------------------- /src/compiler/scanner.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/scanner.c -------------------------------------------------------------------------------- /src/compiler/scanner.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/scanner.h -------------------------------------------------------------------------------- /src/compiler/symbol.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/symbol.c -------------------------------------------------------------------------------- /src/compiler/symbol.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/symbol.h -------------------------------------------------------------------------------- /src/compiler/utils.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/utils.c -------------------------------------------------------------------------------- /src/compiler/utils.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/compiler/utils.h -------------------------------------------------------------------------------- /src/cvm/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/cvm/Makefile -------------------------------------------------------------------------------- /src/cvm/cvm.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/cvm/cvm.c -------------------------------------------------------------------------------- /src/cvm/cvm.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eudisd/c-compiler/HEAD/src/cvm/cvm.h -------------------------------------------------------------------------------- /src/cvm/drivers/main.c: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------