Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Few parser fixes #158

Merged
merged 11 commits into from
Jun 24, 2024
Merged

Few parser fixes #158

merged 11 commits into from
Jun 24, 2024

Conversation

kaleidawave
Copy link
Owner

@kaleidawave kaleidawave commented Jun 3, 2024

- Fix capitalisation in `ForLoopStatementInitialiser`
- Fix for #154
@kaleidawave kaleidawave changed the title Few fixes Few parser fixes Jun 9, 2024
@kaleidawave kaleidawave added bug Something isn't working parser Related to Ezno's syntax parser, AST definitions and output labels Jun 9, 2024
@kaleidawave
Copy link
Owner Author

Pretty formating of array

Currently if some structures including array have check to see if their content printed on the same line overflows a specific count. This works well (see parser/examples/pretty_printing.rs). However in a project I am working on I had a case where I have a array of lots of literals.

const x = [1, 1, 0, 0, 1, 0, 1, ... *etc* ]

as it breaks the max-line width threshold it is pretty printed as

const x = [
  1, 
  1, 
  0, 
  0, 
  1, 
  0, 
  1,
   ... *etc* 
]

I wonder if in this case it could be alternatively done in half-way manner, where the items are distributed?

const x = [
  1, 1, 0, 0, ...
  1, 0, 1, 0, ...
   ... *etc* 
]

- Add array pretty printing
- Fix spread being allowed not at the end of destructuring (required checker changes)
- Not sure why fuzzing broke?
@kaleidawave
Copy link
Owner Author

Help @addisoncrump @jasikpark. Not sure why it is now requiring x86_64-unknown-linux-musl, when the rest of the tests run on x86_64-unknown-linux-gnu?

error[E0463]: can't find crate for `core`
  |
  = note: the `x86_64-unknown-linux-musl` target may not be installed
  = help: consider downloading the target with `rustup target add x86_64-unknown-linux-musl`
  = help: consider building the standard library from source with `cargo build -Zbuild-std`

For more information about this error, try `rustc --explain E0463`.
error: could not compile `libc` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
Error: failed to build fuzz script: RUSTFLAGS="-Cpasses=sancov-module -Cllvm-args=-sanitizer-coverage-level=4 -Cllvm-args=-sanitizer-coverage-inline-8bit-counters -Cllvm-args=-sanitizer-coverage-pc-table -Cllvm-args=-sanitizer-coverage-trace-compares --cfg fuzzing -Clink-dead-code -Cllvm-args=-sanitizer-coverage-stack-depth -Cdebug-assertions -C codegen-units=1" "cargo" "build" "--manifest-path" "/home/runner/work/ezno/ezno/parser/fuzz/Cargo.toml" "--target" "x86_64-unknown-linux-musl" "--release" "--config" "profile.release.debug=true" "--bin" "module_roundtrip_naive"
Error: Process completed with exit code 1.

It was working yesterday (maybe a change in 1.79 that has just come through, not sure though) and not sure whether changing the CI dtolnay/rust-toolchain@stable target is a good fix or would even work?

@addisoncrump
Copy link
Contributor

You seem to have run into this: rust-fuzz/cargo-fuzz#355

I'm surprised that hasn't already been fixed... I bumped the upstream issue.

@kaleidawave
Copy link
Owner Author

Need to look into this fuzzing issue before merge. Understand why broken, but not sure why now? There hasn't been an update to cargo-fuzz in a while? Manually setting the version hasn't seemed to work?

@kaleidawave
Copy link
Owner Author

Installing from the GitHub repository works? (cargo install --git https://github.com/rust-fuzz/cargo-fuzz.git). Only adds 18s to the action (to build the binary from source)? Should be okay, until rust-fuzz/cargo-fuzz#365 is merged!

@kaleidawave kaleidawave marked this pull request as ready for review June 24, 2024 09:12
@kaleidawave kaleidawave merged commit 245d530 into main Jun 24, 2024
8 checks passed
@lishaduck
Copy link
Contributor

lishaduck commented Jun 26, 2024

Are the issues linked resolved? You put "for" after "fix", so they didn't autoclose 😉

@kaleidawave kaleidawave deleted the parser-improvements-036 branch August 24, 2024 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working parser Related to Ezno's syntax parser, AST definitions and output
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants