Language: C

use std::io::*;
use std::str::FromStr;

pub fn read<T: FromStr>() -> T {
    let stdin = stdin();
    let stdin = stdin.lock();
    let token: String = stdin
        .bytes()
        .map(|c| c.expect("failed to read char") as char)
        .skip_while(|c| c.is_whitespace())
        .take_while(|c| !c.is_whitespace())
        .collect();
    token.parse().ok().expect("failed to parse token")
}

pub fn read_n<T: FromStr>(n: usize) -> Vec<T> {
    read_n_logic::<T>(n, vec![])
}

pub fn read_n_logic<T: FromStr>(n: usize, mut a: Vec<T>) -> Vec<T> {
    match n {
        0 => a,
        _ => {
            a.push(read::<T>());
            read_n_logic(n - 1, a)
        }
    }
}
use std::cmp::{max, min};

fn main() {
    let s: i64 = read();
    let w: i64 = read();
    if w >= s {
        println!("{}", "unsafe");
    } else {
        println!("{}", "safe");
    }
}


Compiler output:
main.c:1:1: error: unknown type name 'use'
    1 | use std::io::*;
      | ^~~
main.c:1:8: error: expected '=', ',', ';', 'asm' or '__attribute__' before '::' token
    1 | use std::io::*;
      |        ^~
main.c:2:1: error: unknown type name 'use'
    2 | use std::str::FromStr;
      | ^~~
main.c:2:8: error: expected '=', ',', ';', 'asm' or '__attribute__' before '::' token
    2 | use std::str::FromStr;
      |        ^~
main.c:4:1: error: unknown type name 'pub'
    4 | pub fn read<T: FromStr>() -> T {
      | ^~~
main.c:4:8: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'read'
    4 | pub fn read<T: FromStr>() -> T {
      |        ^~~~
main.c:16:1: error: unknown type name 'pub'
   16 | pub fn read_n<T: FromStr>(n: usize) -> Vec<T> {
      | ^~~
main.c:16:8: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'read_n'
   16 | pub fn read_n<T: FromStr>(n: usize) -> Vec<T> {
      |        ^~~~~~
main.c:20:1: error: unknown type name 'pub'
   20 | pub fn read_n_logic<T: FromStr>(n: usize, mut a: Vec<T>) -> Vec<T> {
      | ^~~
main.c:20:8: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'read_n_logic'
   20 | pub fn read_n_logic<T: FromStr>(n: usize, mut a: Vec<T>) -> Vec<T> {
      |        ^~~~~~~~~~~~
main.c:29:1: error: unknown type name 'use'
   29 | use std::cmp::{max, min};
      | ^~~
main.c:29:8: error: expected '=', ',', ';', 'asm' or '__attribute__' before '::' token
   29 | use std::cmp::{max, min};
      |        ^~
main.c:31:1: error: unknown type name 'fn'
   31 | fn main() {
      | ^~
main.c: In function 'main':
main.c:32:5: error: unknown type name 'let'
   32 |     let s: i64 = read();
      |     ^~~
main.c:32:10: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
   32 |     let s: i64 = read();
      |          ^
main.c:33:5: error: unknown type name 'let'
   33 |     let w: i64 = read();
      |     ^~~
main.c:33:10: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
   33 |     let w: i64 = read();
      |          ^
main.c:34:8: error: expected '(' before 'w'
   34 |     if w >= s {
      |        ^
      |        (
main.c:34:8: error: 'w' undeclared (first use in this function)
main.c:34:8: note: each undeclared identifier is reported only once for each function it appears in