-
Notifications
You must be signed in to change notification settings - Fork 329
-
Notifications
You must be signed in to change notification settings - Fork 329
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
terminal APIs not supported: can't call foreign function ioctl
on OS linux
#3719
Comments
Pretty sure this duplicates #743. There are a lot of syscalls, and a lot of platforms. Not all syscalls are emulated / supported by Miri yet. Even when a sys call is supported in part, that doesn't mean every combination of flags / arguments is implemented either. I don't want to put words in the maintainers' mouths, but from what I've personally seen, they are friendly and welcome contributions :). |
Someone should look into whether it's reasonable to shim all libc APIs for implementing a TUI. There are a handful beyond this one ioctl. For example, being able to get the current window size is unlikely to be useful without being able to put the terminal into raw mode. It's not clear to me if these APIs can be implemented portably. |
Yeah, I'm not sure these can be done portably either. Not sure what the Miri stance is on non-portable syscalls - to me, that seems like a second dimension beyond the "basic" isolation (i.e. some stuff like basic file system stuff breaks isolation, but may still be portable / emulatable). |
ioctl
on OS linux
ioctl
on OS linux
I just learned about miri, and I'm trying to use it in a project and I cannot get it to run basically anything, I get errors in very basic "tests". e.g. this one.
The
color_grade_0_to_100_green_blue_white_yellow_red
function looks like below (bad code 🤡 )And I get this result from
MIRIFLAGS="-Zmiri-disable-isolation -Zmiri-backtrace=full" cargo +nightly miri test tune_color_grade
.I was not expect all these issues since I run this project with
cargo hack test --feature-powerset
on linux/windows/macos with no issues.I must be doing something wrong?
The text was updated successfully, but these errors were encountered: