]> git.corax.cc Git - ccc/log
ccc
5 years agoparser: Implement parsing of while and goto statements grammar
Matthias Kruk [Sat, 18 Jul 2020 04:26:11 +0000 (13:26 +0900)]
parser: Implement parsing of while and goto statements

5 years agogrammar: Add types for remaining grammatical structures
Matthias Kruk [Sat, 18 Jul 2020 04:25:44 +0000 (13:25 +0900)]
grammar: Add types for remaining grammatical structures

5 years agogrammar: Add structures for all statement types
Matthias Kruk [Wed, 15 Jul 2020 16:42:51 +0000 (01:42 +0900)]
grammar: Add structures for all statement types

5 years agoparser: Begin with implementation of parser for statements
Matthias Kruk [Wed, 15 Jul 2020 15:12:05 +0000 (00:12 +0900)]
parser: Begin with implementation of parser for statements

5 years agodoc: Update the parser graph to reflect the current implementation status parser
Matthias Kruk [Sun, 12 Jul 2020 10:02:34 +0000 (19:02 +0900)]
doc: Update the parser graph to reflect the current implementation status

5 years agoparser: Implement parsing of direct-abstract-declarators, parameter-type-lists, param...
Matthias Kruk [Sun, 12 Jul 2020 10:01:35 +0000 (19:01 +0900)]
parser: Implement parsing of direct-abstract-declarators, parameter-type-lists, parameter-lists, parameter-declarations, declarators, direct-declarators, constant-expressions, and identifier-lists

5 years agolex: Parse "..." as separate token
Matthias Kruk [Sun, 12 Jul 2020 08:23:31 +0000 (17:23 +0900)]
lex: Parse "..." as separate token

5 years agoparser: Implement parsing of type names and abstract declarators
Matthias Kruk [Sun, 12 Jul 2020 06:18:24 +0000 (15:18 +0900)]
parser: Implement parsing of type names and abstract declarators

5 years agoMerge branch 'parser' of ssh://corax.cc:2975/srv/devel/ccc into parser
Matthias Kruk [Sat, 11 Jul 2020 16:09:39 +0000 (01:09 +0900)]
Merge branch 'parser' of ssh://corax.cc:2975/srv/devel/ccc into parser

5 years agodoc: Add entire C grammar to parser graph
Matthias Kruk [Sat, 11 Jul 2020 15:54:15 +0000 (00:54 +0900)]
doc: Add entire C grammar to parser graph

5 years agodoc: Add entire C grammar to parser graph
Matthias Kruk [Sat, 11 Jul 2020 15:54:15 +0000 (00:54 +0900)]
doc: Add entire C grammar to parser graph

5 years agodoc: Add Makefile for documentation
Matthias Kruk [Sat, 11 Jul 2020 11:22:39 +0000 (20:22 +0900)]
doc: Add Makefile for documentation

5 years agodoc: Update parser graph
Matthias Kruk [Sat, 11 Jul 2020 11:22:00 +0000 (20:22 +0900)]
doc: Update parser graph

5 years agoparser: Implement parsing of specifier-qualifier-lists
Matthias Kruk [Sat, 11 Jul 2020 08:59:14 +0000 (17:59 +0900)]
parser: Implement parsing of specifier-qualifier-lists

5 years agoparser: Simplify specifier_qualifier_list type
Matthias Kruk [Sat, 11 Jul 2020 08:58:54 +0000 (17:58 +0900)]
parser: Simplify specifier_qualifier_list type

5 years agoparser: Implement parsing of expressions
Matthias Kruk [Sat, 11 Jul 2020 08:46:17 +0000 (17:46 +0900)]
parser: Implement parsing of expressions

5 years agoparser: Add prototype for parse_assignment_expression()
Matthias Kruk [Sat, 11 Jul 2020 08:45:57 +0000 (17:45 +0900)]
parser: Add prototype for parse_assignment_expression()

5 years agoparser: Implement parsing of argument expression lists
Matthias Kruk [Sat, 11 Jul 2020 08:38:51 +0000 (17:38 +0900)]
parser: Implement parsing of argument expression lists

5 years agoparser: Implement parsing of postfix expressions
Matthias Kruk [Sat, 11 Jul 2020 08:16:05 +0000 (17:16 +0900)]
parser: Implement parsing of postfix expressions

5 years agoparser: Rename struct postfix_expression's data.member.ident member to data.member...
Matthias Kruk [Sat, 11 Jul 2020 08:03:15 +0000 (17:03 +0900)]
parser: Rename struct postfix_expression's data.member.ident member to data.member.identifier

5 years agoparser: Implement parsing of unary expressions
Matthias Kruk [Sat, 11 Jul 2020 07:47:16 +0000 (16:47 +0900)]
parser: Implement parsing of unary expressions

5 years agoparser: Add missing constructors and destructors for constants and other expressions
Matthias Kruk [Sat, 11 Jul 2020 07:46:33 +0000 (16:46 +0900)]
parser: Add missing constructors and destructors for constants and other expressions

5 years agoparser: Add several constructors and destructors for grammatical structures
Matthias Kruk [Sat, 11 Jul 2020 07:16:41 +0000 (16:16 +0900)]
parser: Add several constructors and destructors for grammatical structures

5 years agodoc: Add graph of the hierarchy of grammatical structures
Matthias Kruk [Tue, 7 Jul 2020 13:10:02 +0000 (22:10 +0900)]
doc: Add graph of the hierarchy of grammatical structures

5 years agoparser: Add code to test primary-expression parsing
Matthias Kruk [Tue, 7 Jul 2020 13:07:20 +0000 (22:07 +0900)]
parser: Add code to test primary-expression parsing

5 years agoparser: Add destructors for logical-or-expression, logical-and-expression, inclusive...
Matthias Kruk [Tue, 7 Jul 2020 11:41:07 +0000 (20:41 +0900)]
parser: Add destructors for logical-or-expression, logical-and-expression, inclusive-or-expression, exclusive-or-expression, and-expression, equality-expression, relational-expression, shift-expression, additive-expression, multiplicative-expression, and cast-expression grammatical structures

5 years agoparser: Fix parsing of logical-or-expression, logical-and-expression, inclusive-or...
Matthias Kruk [Tue, 7 Jul 2020 11:39:22 +0000 (20:39 +0900)]
parser: Fix parsing of logical-or-expression, logical-and-expression, inclusive-or-expression, exclusive-or-expression, and-expression, equality-expression, relational-expression, shift-expression, additive-expression, and multiplicative-expression grammatical structures

5 years agoparser: Implement parsing of relational-expression, shift-expression, additive-expres...
Matthias Kruk [Sun, 5 Jul 2020 09:26:57 +0000 (18:26 +0900)]
parser: Implement parsing of relational-expression, shift-expression, additive-expression, and multiplicative-expression grammar structures

5 years agoparser: Implement parsing of inclusive-or-expression, exclusive-or-expression, and...
Matthias Kruk [Sun, 5 Jul 2020 08:58:38 +0000 (17:58 +0900)]
parser: Implement parsing of inclusive-or-expression, exclusive-or-expression, and-expression, and equality-expression grammar constructs

5 years agolex: Fix lexing of xor operators
Matthias Kruk [Sun, 5 Jul 2020 08:48:59 +0000 (17:48 +0900)]
lex: Fix lexing of xor operators

5 years agoparser: Implement parsing of logical-or-expression grammar constructs; add prototypes...
Matthias Kruk [Sun, 5 Jul 2020 08:30:18 +0000 (17:30 +0900)]
parser: Implement parsing of logical-or-expression grammar constructs; add prototypes for parser functions

5 years agoparser: Implement parsing of cast-expression and conditional-expression grammar types
Matthias Kruk [Sun, 5 Jul 2020 08:14:46 +0000 (17:14 +0900)]
parser: Implement parsing of cast-expression and conditional-expression grammar types

5 years agoparser: Add type-name grammar type
Matthias Kruk [Sun, 5 Jul 2020 08:14:06 +0000 (17:14 +0900)]
parser: Add type-name grammar type

5 years agoparser: Implement parsing of assignment expressions
Matthias Kruk [Sun, 5 Jul 2020 07:28:46 +0000 (16:28 +0900)]
parser: Implement parsing of assignment expressions

5 years agoparser: Add various grammatical types and allocator functions
Matthias Kruk [Sun, 5 Jul 2020 07:28:25 +0000 (16:28 +0900)]
parser: Add various grammatical types and allocator functions

5 years agoparser: Implement parsing of strings, identifiers, and primary expressions
Matthias Kruk [Sun, 5 Jul 2020 05:57:33 +0000 (14:57 +0900)]
parser: Implement parsing of strings, identifiers, and primary expressions

5 years agolex: Return wide strings and wide character literals as one token
Matthias Kruk [Sun, 5 Jul 2020 05:38:07 +0000 (14:38 +0900)]
lex: Return wide strings and wide character literals as one token

5 years agoparser: Implement parsing of integer, character, and floating point constants
Matthias Kruk [Sat, 4 Jul 2020 08:50:22 +0000 (17:50 +0900)]
parser: Implement parsing of integer, character, and floating point constants

5 years agolex: Add token type for floating pointer literals and parse them correctly
Matthias Kruk [Sat, 4 Jul 2020 08:49:10 +0000 (17:49 +0900)]
lex: Add token type for floating pointer literals and parse them correctly

5 years agoparser: Implement parsing of declaration-specifiers
Matthias Kruk [Sat, 20 Jun 2020 07:47:02 +0000 (16:47 +0900)]
parser: Implement parsing of declaration-specifiers

5 years agotoken: Add token_value() method to get the lexeme of a token
Matthias Kruk [Sat, 20 Jun 2020 07:46:02 +0000 (16:46 +0900)]
token: Add token_value() method to get the lexeme of a token

5 years agoparser: Move structs that describe the C grammar to grammar.h and their methods to...
Matthias Kruk [Sun, 7 Jun 2020 23:11:31 +0000 (08:11 +0900)]
parser: Move structs that describe the C grammar to grammar.h and their methods to grammar.c

5 years agolex: Add file attribute to tokens to identify the file a token came from
Matthias Kruk [Sun, 7 Jun 2020 09:53:28 +0000 (18:53 +0900)]
lex: Add file attribute to tokens to identify the file a token came from

5 years agoparser: Implement parsing of translation units, external declarations, storage class...
Matthias Kruk [Sun, 7 Jun 2020 09:52:36 +0000 (18:52 +0900)]
parser: Implement parsing of translation units, external declarations, storage class specifiers, type specifiers, and type qualifiers

5 years agoparser: Implement parsing of type qualifiers
Matthias Kruk [Sun, 7 Jun 2020 04:03:39 +0000 (13:03 +0900)]
parser: Implement parsing of type qualifiers

5 years agolex: Add token types for keywords lexer unstable
Matthias Kruk [Mon, 1 Jun 2020 01:13:41 +0000 (10:13 +0900)]
lex: Add token types for keywords

5 years agolex: Add functions to the lexer so the tokens can be accessed more flexibly
Matthias Kruk [Sun, 31 May 2020 23:39:06 +0000 (08:39 +0900)]
lex: Add functions to the lexer so the tokens can be accessed more flexibly

5 years agolex: Assign tokens a type during the lexing step
Matthias Kruk [Sun, 31 May 2020 05:53:29 +0000 (14:53 +0900)]
lex: Assign tokens a type during the lexing step

5 years agolex: Clean up the token type
Matthias Kruk [Sun, 31 May 2020 05:51:54 +0000 (14:51 +0900)]
lex: Clean up the token type

5 years agolex: Refactor the tokenizer into a lexer module
Matthias Kruk [Sun, 31 May 2020 04:16:17 +0000 (13:16 +0900)]
lex: Refactor the tokenizer into a lexer module

5 years agoRename tokenize.c to lex.c
Matthias Kruk [Sun, 31 May 2020 03:49:36 +0000 (12:49 +0900)]
Rename tokenize.c to lex.c

5 years agotokenize: Add parser for '->' tokens and make sure the last token is returned even... tokenizer
Matthias Kruk [Sat, 30 May 2020 15:41:10 +0000 (00:41 +0900)]
tokenize: Add parser for '->' tokens and make sure the last token is returned even if the output does not end with a newline

5 years agotokenize: Fix mistaken use of putchar() where putnext() should have been
Matthias Kruk [Sat, 30 May 2020 14:28:27 +0000 (23:28 +0900)]
tokenize: Fix mistaken use of putchar() where putnext() should have been

5 years agotokenize: Fix off-by-one bug in the column number
Matthias Kruk [Sat, 30 May 2020 14:15:06 +0000 (23:15 +0900)]
tokenize: Fix off-by-one bug in the column number

5 years agotokenize: Implement recognition of identifiers, numeric literals, and several operators
Matthias Kruk [Sat, 30 May 2020 09:24:34 +0000 (18:24 +0900)]
tokenize: Implement recognition of identifiers, numeric literals, and several operators

5 years agotokenize: Add token_new_from_char() helper function
Matthias Kruk [Sat, 30 May 2020 09:23:14 +0000 (18:23 +0900)]
tokenize: Add token_new_from_char() helper function

5 years agotokenize: Implement tokenization of bitwise operators, string literals, character...
Matthias Kruk [Fri, 29 May 2020 11:01:53 +0000 (20:01 +0900)]
tokenize: Implement tokenization of bitwise operators, string literals, character literals, and some others

5 years agotokenize: Implement correct tokenization of comments and operators starting with...
Matthias Kruk [Thu, 28 May 2020 00:27:28 +0000 (09:27 +0900)]
tokenize: Implement correct tokenization of comments and operators starting with < and >

5 years agoAdd first attempt at writing a tokenizer
Matthias Kruk [Wed, 27 May 2020 00:34:05 +0000 (09:34 +0900)]
Add first attempt at writing a tokenizer

5 years agodoc: Fix error in the tokenizer chart
Matthias Kruk [Wed, 27 May 2020 00:32:22 +0000 (09:32 +0900)]
doc: Fix error in the tokenizer chart

5 years agodoc: Add graph of the tokenizer automaton master
Matthias Kruk [Tue, 26 May 2020 11:06:47 +0000 (20:06 +0900)]
doc: Add graph of the tokenizer automaton