The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Четвёртая редакция патчей для ядра Linux с поддержкой языка Rust "
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Четвёртая редакция патчей для ядра Linux с поддержкой языка ..." +4 +/
Сообщение от Аноним (-), 17-Янв-22, 20:50 
> "gcc -Wall" и Rust  не нужен.


#include<stdio.h>
int main(int argc, char** argv) {
     int (*putit)(char*) = (int (*) (char*)) (argc != 0 ? 0 : puts);
     return putit("bar");
}
$ gcc -Wall test.c && ./a.out
Segmentation fault


$ cat test.rs
use std::env;
use std::io::{Write};
fn put(foo:&[u8]) ->() {
    std::io::stdout().write_all(foo).unwrap();
}
pub fn main() {
    let putit = if env::args().len() !=0 {0} else {put};
    putit(b"hello");
}
$ rustc test.rs
error[E0308]: `if` and `else` have incompatible types
--> tst.rs:7:52
  |
7 |     let putit = if env::args().len() !=0 {0} else {put};
  |                                           -        ^^^ expected integer, found fn item
  |                                           |
  |                                           expected because of this
  |
  = note: expected type `{integer}`
          found fn item `for<'r> fn(&'r [u8]) {put}

как скажешь.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Четвёртая редакция патчей для ядра Linux с поддержкой языка Rust , opennews, 17-Янв-22, 14:18  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру