| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| | |
* Fix typos
* Revert changes in vendor module
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
| |
* Fix PEP8 [E101](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)
* Fix PEP8 [E711](https://github.com/PyCQA/pycodestyle/blob/2.8.0/docs/intro.rst#error-codes)
* Fix E999 (python2)
* Fix PEP8 [F401](https://flake8.pycqa.org/en/4.0.1/user/error-codes.html)
|
|
|
|
|
| |
* Add support for Python 3.10
* Test on 3.10 final
|
|
|
| |
Co-authored-by: vit9696 <vit9696@users.noreply.github.com>
|
|
|
|
|
|
|
| |
* Implement u8, u, and U strings from C11
* Also add u8, u, and U chars from C11 and C23
Co-authored-by: vit9696 <vit9696@users.noreply.github.com>
|
|
|
|
| |
This lets us re-enable that were commented out in #435
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Implement _Alignas and _Alignof support with tests
* Improve testing and avoid unnecessary alignas for typedef
* Add more tests
* Drop legacy artifact
* Remove extra _add_declaration_specifier call
* Drop custom equality comparators for now
Co-authored-by: vit9696 <vit9696@users.noreply.github.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* Improve _Atomic support with more tests and fix typedef handling
* Remove duplicated tests and check the generated code for typedefs
* Add typedef testing to parser as well
Co-authored-by: vit9696 <vit9696@users.noreply.github.com>
|
|
|
|
| |
Now it matches the yacc flag name
|
|
|
|
| |
Updates #430
|
|
|
|
|
| |
Now the ASTs produced are more correct, and more complex cases work like
nested _Atomic(...) specifiers.
|
|
|
|
|
| |
Based on #431 by vit9696
Updates #430
|
|
|
|
|
|
|
| |
This adds initial implementation for the _Atomic keyword in C11, only focusing
on the use as qualifier (spec section 6.7.3)
Based on #431 by vit9696. Updates #430
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Introduce partial C11 support
Implemented _Noreturn, _Static_assert, _Thread_local. Also fixed
tests with preprocessor on macOS.
* Add more tests
Co-authored-by: vit9696 <vit9696@users.noreply.github.com>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* c_parser: support parenthesized compounds
Support parenthesized compound statements as described here:
https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
* test_c_parser: support additional initializers
Add support to `expand_init` for additional `c_ast` types. If a type
is not explicitly handled, return the type name instead of `None`.
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
* test_c_parser: test parenthesized compounds
Add parsing tests for various situations of parenthesized compound
statements. The complete tree generated by the test string is:
```
FileAST:
FuncDef:
Decl: foo, [], [], []
FuncDecl:
TypeDecl: foo, []
IdentifierType: ['void']
Compound:
Decl: a, [], [], []
TypeDecl: a, []
IdentifierType: ['int']
Compound:
Compound:
Constant: int, 1
Compound:
Constant: int, 1
Constant: int, 2
Decl: b, [], [], []
TypeDecl: b, []
IdentifierType: ['int']
Compound:
Constant: int, 1
Decl: c, [], [], []
TypeDecl: c, []
IdentifierType: ['int']
Decl: d, [], [], []
TypeDecl: d, []
IdentifierType: ['int']
Compound:
Decl: x, [], [], []
TypeDecl: x, []
IdentifierType: ['int']
Constant: int, 1
BinaryOp: +
ID: x
Constant: int, 2
Assignment: =
ID: a
Compound:
Decl: x, [], [], []
TypeDecl: x, []
IdentifierType: ['int']
Constant: int, 1
BinaryOp: *
Constant: int, 2
ID: x
```
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use the stdlib standard entry point for running tests through the
command:
python -m unittest discover
Docs: https://docs.python.org/3/library/unittest.html#unittest-test-discovery
This automatically looks for files with the test_ prefix and runs them
as tests. This removes the need for the custom test entry point script,
all_tests.py.
|
|
|
| |
Python 3.9 was released on October 5th, 2020.
|
|
|
|
|
|
| |
It's not currently required and adds all kinds of complexity for
managing and keeping up to date. GitHub actions do this well for pending
PRs. May reconsider and bring it back in the future.
|
|
|
| |
The project now uses GitHub actions and Travis does not run.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
[no fix yet]
|
|
|
|
| |
We run Windows tests through GitHub actions now
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* Test change
* Add OS
|
|\ |
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix #385: generate code with nested sizeofs
* Fix #378: replace assertion with check
Only the assertion inside `_build_function_definition` is replaced. The
assertion is not appropriate because there are possible inputs that
would trigger the assertion, they're just grammatically incorrect. Thus,
it is replaced with a check that raises `ParseError` on failure.
* Fix #379: parse struct with nested enum
|
| |
|
| |
|