aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Remove debug stmts during grouping of switch.Bernhard Schommer2015-11-063-7/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Debug statements introduced during the translation result in warnings when they are introduced at the head of the switch. Since they are not used and the warning is not necessary we can remove them before. Fix 17580.
* | | | | | Added printing functions for debug annotations.Bernhard Schommer2015-11-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of printing <unknown builtin> we now print the debug annotations. Fix 17581.
* | | | | | Merge branch 'master' of ↵Michael Schmidt2015-11-061-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | git+ssh://ssh.absint.com/common/repositories/git/tools/compcert
| * | | | | | Do not print parameter names in function types.Bernhard Schommer2015-11-061-2/+2
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For function types used by function pointers we do not need to print the name of the paraments. Also switch the logic in case of prototyped/unprototyped. Fix 17579.
* / / / / / bug 17567, typosMichael Schmidt2015-11-064-11/+11
|/ / / / /
* | | | | Merge pull request #67 from fpottier/compressBernhard Schommer2015-11-051-1/+9
|\ \ \ \ \ | | | | | | | | | | | | When printing a fragment of source text as part of an error message, …
| * | | | | When printing a fragment of source text as part of an error message, ↵François Pottier2015-11-031-1/+9
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | compress multiple whitespace characters into just one space character. This is done before the call to [sanitize], which replaces special characters with a dot. This produces more a readable result when the error spans multiple lines.
* | | | | New option to control the debug information build.Bernhard Schommer2015-11-044-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new option -gonly-global allows the generation of debuging information for global variables only. Bug 17566.
* | | | | bug 17567, typosMichael Schmidt2015-11-041-3/+3
| | | | |
* | | | | bug 17567, typosMichael Schmidt2015-11-042-2/+2
| |_|_|/ |/| | |
* | | | Removed unused p_char_list function. Bug 17544.Bernhard Schommer2015-11-031-2/+0
| |_|/ |/| |
* | | Changed the name of a few ppc instructions. Bug 17544Bernhard Schommer2015-11-031-3/+3
| | |
* | | Simplify the Json export.Bernhard Schommer2015-11-031-166/+183
|/ / | | | | | | | | | | Instead of having a function for each instruction we now use a generic function to print the arguments. Bug 17544.
* | Few simple rewrite for the AsmToJSON printer.Bernhard Schommer2015-10-291-155/+147
| | | | | | | | | | | | In a first step all the print commands for the names are replaced by a more safe variant that avoids missing \". Bug 17328
* | Another typo in AsmToJson.Bernhard Schommer2015-10-291-1/+1
| | | | | | | | Bug 17473
* | Fixed some minor types in the asm printer.Bernhard Schommer2015-10-291-1/+1
| | | | | | | | Bug 17473
* | Merge branch 'master' of github.com:AbsInt/CompCertBernhard Schommer2015-10-282-17/+17
|\ \
| * \ Merge pull request #62 from fpottier/commentBernhard Schommer2015-10-282-17/+17
| |\ \ | | | | | | | | Fixed some comments.
| | * | Set [ErrorReports.debug] to [false].François Pottier2015-10-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | When [debug] is [false], there are a few places where we silently ignore an error. This should not make any difference if everything works as planned.
| | * | Fixed some comments.François Pottier2015-10-281-16/+16
| |/ /
* | | Use ifndef correct. Bug 17481Bernhard Schommer2015-10-271-1/+1
| | |
* | | Test if menhir includes is set before trying to set it.Bernhard Schommer2015-10-271-1/+5
| | | | | | | | | | | | Bug 17481.
* | | Allow the MENHIR_INCLUDE path to be set by environment.Bernhard Schommer2015-10-271-4/+3
|/ / | | | | | | Bug 17481
* | Fixed typo in AsmToJson.Bernhard Schommer2015-10-261-1/+1
| | | | | | | | Bug 17473.
* | Merge pull request #61 from fpottier/cleanBernhard Schommer2015-10-261-5/+1
|\ \ | | | | | | Fixed one error message and removed two comments.
| * | Fixed one error message and removed two comments.François Pottier2015-10-261-5/+1
| | |
* | | Also redirect the output of stderr.Bernhard Schommer2015-10-261-2/+1
| | | | | | | | | | | | Bug 17481.
* | | Merge branch 'fpottier-clean'Bernhard Schommer2015-10-2626-126/+6195
|\ \ \
| * | | Merge branch 'clean' of git://github.com/fpottier/CompCert into fpottier-cleanBernhard Schommer2015-10-2626-126/+6195
|/| | | | |/ /
| * | Merge branch 'clean' of github.com:fpottier/CompCert into cleanFrançois Pottier2015-10-230-0/+0
| |\ \
| | * \ Merge remote branch 'upstream/master' into cleanFrançois Pottier2015-10-23289-20497/+17037
| | |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile.extr
| * | \ \ Merge remote branch 'upstream/master' into cleanFrançois Pottier2015-10-23289-20497/+17037
| |\ \ \ \ | | |/ / / | |/| / / | | |/ / | | | | Conflicts: Makefile.extr
| * | | Updated [configure] to require today's Menhir.François Pottier2015-10-231-3/+4
| | | |
| * | | Added copyright banners to the new files.François Pottier2015-10-238-0/+94
| | | |
| * | | Added a few cleanup commands in [make clean].François Pottier2015-10-232-2/+3
| | | |
| * | | Added some handwritten .c files in tests/handwritten/.François Pottier2015-10-2311-0/+59
| | | |
| * | | Install the new system for reporting syntax errors.François Pottier2015-10-239-8/+5791
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This requires the development version of Menhir, to be released soon. In summary: handcrafted.messages is new. It contains a mapping of erroneous sentences to error messages, together with a lot of comments. Makefile.extr is new. It contains a rule to generate cparser/pre_parser_messages.ml based on this mapping. cparser/ErrorReports.{ml,mli} are new. They construct syntax error messages, based on the compiled mapping. cparser/Lexer.mll is modified. The last two tokens that have been read are stored in a buffer. ErrorReports is called to construct a syntax error message. cparser/GNUmakefile is new. It offers several commands for working on the pre-parser. cparser/deLexer.ml is new. It is a script (it is not linked into CompCert). It translates the symbolic name of a token to an example of this token in concrete C syntax. It is used by [make -C cparser concrete] to produce the .c files in tests/generated/. cparser/tests/generated/Makefile is new. It runs ccomp, clang and gcc on each of the generated C files, so as to allow a comparison of the error messages.
| * | | Lexer update: use Menhir's incremental API instead of Menhir's traditional API.François Pottier2015-10-231-3/+16
| | | | | | | | | | | | | | | | | | | | This means that CompCert must now be compiled in --table mode. At this point, the error message for a syntax error is still just "syntax error".
| * | | Lexer cleanup: isolate [lexer_wraper] and rename it to [lexer].François Pottier2015-10-231-6/+10
| | | |
| * | | Lexer cleanup: isolate the entry point into the lexer.François Pottier2015-10-231-6/+10
| | | |
| * | | Added an %on_error_reduce declaration.François Pottier2015-10-231-0/+42
| | | | | | | | | | | | | | | | | | | | This affects in which states errors are detected, but does not change the language that is accepted.
| * | | Changed [asm_flags] to a left-recursive list.François Pottier2015-10-231-1/+1
| | | | | | | | | | | | | | | | This allows us to give a better error message in one state.
| * | | Removed the two uses of $syntaxerror in a semantic action.François Pottier2015-10-231-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For the first one, this is fine; the error is caught by a type check later on. For the second one, it is temporary. More thought is needed about the syntax of K&R functions anyway, as Jacques-Henri and I discovered that it is currently broken (it mis-interprets some function definitions).
| * | | Inlined [constant_expression] to save one state.François Pottier2015-10-231-1/+1
| | | |
| * | | Reformulated [specifier_qualifier_list_no_typedef_name] as a left-recursive ↵François Pottier2015-10-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | list. This saves 7 states and 4 error states.
| * | | Redefined [pointer] as a left-recursive list.François Pottier2015-10-231-7/+24
| | | | | | | | | | | | | | | | | | | | This creates more states and does not change the number of error states. It should make it easier to give a good error message in at least 2 states.
| * | | Replaced [declaration_specifiers_no_typedef_name] with ↵François Pottier2015-10-231-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | [declaration_specifier_no_typedef_name*]. This replaces a right-recursive list with a left-recursive list. This saves 2 states and 6 error states.
| * | | Factorized [declaration_specifier_no_typedef_name].François Pottier2015-10-231-5/+9
| | | | | | | | | | | | | | | | This results in slightly fewer states.
| * | | Reformulated the definitions of [option] and [list] in a slightly more ↵François Pottier2015-10-231-11/+13
| | | | | | | | | | | | | | | | elegant manner.
| * | | Introduced [list] and [ilist]. Redefined [declaration_specifiers_no_type] as ↵François Pottier2015-10-231-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | a left-recursive list. This further reduces the number of states (and error states).