1 #![feature(lang_items, start)]
2 #![no_std]
3
4 #[start]
start(_argc: isize, _argv: *const *const u8) -> isize5 fn start(_argc: isize, _argv: *const *const u8) -> isize {
6 0
7 }
8
9 #[lang = "eh_personality"]
10 #[no_mangle]
rust_eh_personality()11 pub extern "C" fn rust_eh_personality() {}
12
13 #[panic_handler]
panic(_info: &core::panic::PanicInfo) -> !14 fn panic(_info: &core::panic::PanicInfo) -> ! {
15 unsafe {
16 libc::abort();
17 }
18 }
19
20 //////////////////////////////////////////////////////////////////////////////
21
22 use serde::{Serialize, Deserialize};
23
24 #[derive(Serialize, Deserialize)]
25 struct Unit;
26
27 #[derive(Serialize, Deserialize)]
28 struct Newtype(u8);
29
30 #[derive(Serialize, Deserialize)]
31 struct Tuple(u8, u8);
32
33 #[derive(Serialize, Deserialize)]
34 struct Struct {
35 f: u8,
36 }
37
38 #[derive(Serialize, Deserialize)]
39 enum Enum {
40 Unit,
41 Newtype(u8),
42 Tuple(u8, u8),
43 Struct { f: u8 },
44 }
45