Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

partouf
Copy link
Member

@partouf partouf commented Apr 27, 2023

PR Includes #4318 and #4999 and #5000

Adds:

  • Enables supplying environment variables to the compiler
  • New interface for supplying known compiler parameters in a user friendly way, like --march/--target
    • Adds possible targets list and selection to GCC (-march in this case, not really targets)
    • Clang (except for those already preconfigured with a specific target)
    • Rust (for which we don't have preconfigured targets)
    • and z88dk targets
    • Adds Toolchain switching for Clang and ICX/LLVM-based-compilers
    • Adds c/c++ std version selection for various compilers
  • Rust Edition selection and default selection of Edition 2021 when a recent compiler is selected (and the user hasn't already fiddled with the settings)
  • Able to favorite settings (except env variables, those will have to be reentered every time)

Fixes #3765
Fixes #4151
Fixes #3154
Fixes #2724
Fixes #1966

Possible to address suggestions in #3100

@github-actions github-actions bot added the ui label Apr 27, 2023
@partouf
Copy link
Member Author

partouf commented Apr 28, 2023

Screenshot from 2023-04-28 18-11-08

@partouf
Copy link
Member Author

partouf commented Apr 28, 2023

decided on just adding options in the constructor, think it's ok and a lot less complicated than adding yet another properties thing

https://github.com/compiler-explorer/compiler-explorer/pull/5001/files#diff-cf6fcd2b4b0b7564799685f761987bfa6e6778e0dd6d1b375eb71db3c237b023R66

This was referenced Apr 30, 2023
@partouf
Copy link
Member Author

partouf commented Apr 30, 2023

Screenshot from 2023-04-30 21-34-09

@partouf
Copy link
Member Author

partouf commented May 13, 2023

Based on https://github.com/compiler-explorer/infra/actions/runs/4968591553/jobs/8891278478
And the "error: compiler options appear empty for ..." lines

The following argument parsers seem broken:

  • nvrtc
  • flang
  • ghc
  • go
  • zig 0.7.0 - zcc070

Copy link
Member

@mattgodbolt mattgodbolt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More WIP review notes (have to stop now as ran out of time for now; only thing I didn't look at is compiler-overrides.ts

stdin: string;
};

export type CompilationRequestOptions = {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for busting these out 👍🏻

override updateState() {
const state = this.getCurrentState();
this.container.setState(state);
this.compilerShared.updateState(state);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

neat

@partouf partouf merged commit 079d495 into main May 16, 2023
@partouf partouf deleted the compiler-overrides-new branch May 16, 2023 01:53
@partouf
Copy link
Member Author

partouf commented May 16, 2023

now live!

@ojeda
Copy link
Contributor

ojeda commented May 16, 2023

Thanks a ton for this @partouf -- very useful!

ojeda added a commit to Rust-for-Linux/rust-for-linux.com that referenced this pull request Aug 28, 2023
Compiler Explorer added "Compiler Overrides" [1], which for Rust
include setting by default the 2021 edition. Since `rustc` does
not allow that, the old link has stopped working.

Reported to Compiler Explorer at [2].

Link: compiler-explorer/compiler-explorer#5001 [1]
Link: compiler-explorer/compiler-explorer#5429 [2]
Reported-by: Dimitri Belopopsky <[email protected]>
Closes: https://rust-for-linux.zulipchat.com/#narrow/stream/288089-General/topic/CE.20link.20on.20rust-for-linux.20site/near/387667888
Signed-off-by: Miguel Ojeda <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants