@@ -66,57 +66,116 @@ fn main_0() -> i32 {
6666 ( * ( * f3. borrow( ) ) ) ( _arg0, _arg1, _arg2, _arg3)
6767 } ) == 22_u64 )
6868 ) ;
69- let stream: Value < Ptr < :: std:: fs:: File > > = Rc :: new ( RefCell :: new (
70- match Ptr :: from_string_literal ( "rb" ) . to_rust_string ( ) {
71- v if v == "rb" => std:: fs:: OpenOptions :: new ( )
72- . read ( true )
73- . open ( Ptr :: from_string_literal ( "/dev/zero" ) . to_rust_string ( ) )
74- . ok ( )
75- . map_or ( Ptr :: null ( ) , |f| Ptr :: alloc ( f) ) ,
76- v if v == "wb" => std:: fs:: OpenOptions :: new ( )
77- . write ( true )
78- . create ( true )
79- . truncate ( true )
80- . open ( Ptr :: from_string_literal ( "/dev/zero" ) . to_rust_string ( ) )
81- . ok ( )
82- . map_or ( Ptr :: null ( ) , |f| Ptr :: alloc ( f) ) ,
83- _ => panic ! ( "unsupported mode" ) ,
84- } ,
85- ) ) ;
86- assert ! ( !( ( * stream. borrow( ) ) . is_null( ) ) ) ;
87- let buf: Value < Box < [ u8 ] > > = Rc :: new ( RefCell :: new (
88- ( 0 ..16 ) . map ( |_| <u8 >:: default ( ) ) . collect :: < Box < [ u8 ] > > ( ) ,
89- ) ) ;
90- {
91- ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) . memset (
92- ( ( 'X' as u8 ) as i32 ) as u8 ,
93- :: std:: mem:: size_of :: < [ u8 ; 16 ] > ( ) as u64 as usize ,
94- ) ;
95- ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) . clone ( )
96- } ;
97- let n: Value < u64 > = Rc :: new ( RefCell :: new (
98- ( {
99- let _arg0: AnyPtr = ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) ;
100- let _arg1: u64 = 1_u64 ;
101- let _arg2: u64 = 10_u64 ;
102- let _arg3: Ptr < :: std:: fs:: File > = ( * stream. borrow ( ) ) . clone ( ) ;
103- ( * ( * fn1. borrow ( ) ) ) ( _arg0, _arg1, _arg2, _arg3)
104- } ) ,
105- ) ) ;
106- assert ! ( ( ( * n. borrow( ) ) == 10_u64 ) ) ;
107- let i: Value < i32 > = Rc :: new ( RefCell :: new ( 0 ) ) ;
108- ' loop_: while ( ( * i. borrow ( ) ) < 10 ) {
109- assert ! ( ( ( ( * buf. borrow( ) ) [ ( * i. borrow( ) ) as usize ] as i32 ) == 0 ) ) ;
110- ( * i. borrow_mut ( ) ) . prefix_inc ( ) ;
69+ ' loop_: loop {
70+ let stream: Value < Ptr < :: std:: fs:: File > > = Rc :: new ( RefCell :: new (
71+ match Ptr :: from_string_literal ( "rb" ) . to_rust_string ( ) {
72+ v if v == "rb" => std:: fs:: OpenOptions :: new ( )
73+ . read ( true )
74+ . open ( Ptr :: from_string_literal ( "/dev/zero" ) . to_rust_string ( ) )
75+ . ok ( )
76+ . map_or ( Ptr :: null ( ) , |f| Ptr :: alloc ( f) ) ,
77+ v if v == "wb" => std:: fs:: OpenOptions :: new ( )
78+ . write ( true )
79+ . create ( true )
80+ . truncate ( true )
81+ . open ( Ptr :: from_string_literal ( "/dev/zero" ) . to_rust_string ( ) )
82+ . ok ( )
83+ . map_or ( Ptr :: null ( ) , |f| Ptr :: alloc ( f) ) ,
84+ _ => panic ! ( "unsupported mode" ) ,
85+ } ,
86+ ) ) ;
87+ assert ! ( !( ( * stream. borrow( ) ) . is_null( ) ) ) ;
88+ let buf: Value < Box < [ u8 ] > > = Rc :: new ( RefCell :: new (
89+ ( 0 ..16 ) . map ( |_| <u8 >:: default ( ) ) . collect :: < Box < [ u8 ] > > ( ) ,
90+ ) ) ;
91+ {
92+ ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) . memset (
93+ ( ( 'X' as u8 ) as i32 ) as u8 ,
94+ :: std:: mem:: size_of :: < [ u8 ; 16 ] > ( ) as u64 as usize ,
95+ ) ;
96+ ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) . clone ( )
97+ } ;
98+ let n: Value < u64 > = Rc :: new ( RefCell :: new ( libcc2rs:: fread_refcount (
99+ ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) ,
100+ 1_u64 ,
101+ 10_u64 ,
102+ ( * stream. borrow ( ) ) . clone ( ) ,
103+ ) ) ) ;
104+ assert ! ( ( ( * n. borrow( ) ) == 10_u64 ) ) ;
105+ let i: Value < i32 > = Rc :: new ( RefCell :: new ( 0 ) ) ;
106+ ' loop_: while ( ( * i. borrow ( ) ) < 10 ) {
107+ assert ! ( ( ( ( * buf. borrow( ) ) [ ( * i. borrow( ) ) as usize ] as i32 ) == 0 ) ) ;
108+ ( * i. borrow_mut ( ) ) . prefix_inc ( ) ;
109+ }
110+ let i: Value < i32 > = Rc :: new ( RefCell :: new ( 10 ) ) ;
111+ ' loop_: while ( ( * i. borrow ( ) ) < 16 ) {
112+ assert ! ( ( ( ( * buf. borrow( ) ) [ ( * i. borrow( ) ) as usize ] as i32 ) == ( ( 'X' as u8 ) as i32 ) ) ) ;
113+ ( * i. borrow_mut ( ) ) . prefix_inc ( ) ;
114+ }
115+ {
116+ ( * stream. borrow ( ) ) . delete ( ) ;
117+ 0
118+ } ;
119+ if !( 0 != 0 ) {
120+ break ;
121+ }
111122 }
112- let i: Value < i32 > = Rc :: new ( RefCell :: new ( 10 ) ) ;
113- ' loop_: while ( ( * i. borrow ( ) ) < 16 ) {
114- assert ! ( ( ( ( * buf. borrow( ) ) [ ( * i. borrow( ) ) as usize ] as i32 ) == ( ( 'X' as u8 ) as i32 ) ) ) ;
115- ( * i. borrow_mut ( ) ) . prefix_inc ( ) ;
123+ ' loop_: loop {
124+ let stream: Value < Ptr < :: std:: fs:: File > > = Rc :: new ( RefCell :: new (
125+ match Ptr :: from_string_literal ( "rb" ) . to_rust_string ( ) {
126+ v if v == "rb" => std:: fs:: OpenOptions :: new ( )
127+ . read ( true )
128+ . open ( Ptr :: from_string_literal ( "/dev/zero" ) . to_rust_string ( ) )
129+ . ok ( )
130+ . map_or ( Ptr :: null ( ) , |f| Ptr :: alloc ( f) ) ,
131+ v if v == "wb" => std:: fs:: OpenOptions :: new ( )
132+ . write ( true )
133+ . create ( true )
134+ . truncate ( true )
135+ . open ( Ptr :: from_string_literal ( "/dev/zero" ) . to_rust_string ( ) )
136+ . ok ( )
137+ . map_or ( Ptr :: null ( ) , |f| Ptr :: alloc ( f) ) ,
138+ _ => panic ! ( "unsupported mode" ) ,
139+ } ,
140+ ) ) ;
141+ assert ! ( !( ( * stream. borrow( ) ) . is_null( ) ) ) ;
142+ let buf: Value < Box < [ u8 ] > > = Rc :: new ( RefCell :: new (
143+ ( 0 ..16 ) . map ( |_| <u8 >:: default ( ) ) . collect :: < Box < [ u8 ] > > ( ) ,
144+ ) ) ;
145+ {
146+ ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) . memset (
147+ ( ( 'X' as u8 ) as i32 ) as u8 ,
148+ :: std:: mem:: size_of :: < [ u8 ; 16 ] > ( ) as u64 as usize ,
149+ ) ;
150+ ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) . clone ( )
151+ } ;
152+ let n: Value < u64 > = Rc :: new ( RefCell :: new (
153+ ( {
154+ let _arg0: AnyPtr = ( ( buf. as_pointer ( ) as Ptr < u8 > ) as Ptr < u8 > ) . to_any ( ) ;
155+ let _arg1: u64 = 1_u64 ;
156+ let _arg2: u64 = 10_u64 ;
157+ let _arg3: Ptr < :: std:: fs:: File > = ( * stream. borrow ( ) ) . clone ( ) ;
158+ ( * ( * fn1. borrow ( ) ) ) ( _arg0, _arg1, _arg2, _arg3)
159+ } ) ,
160+ ) ) ;
161+ assert ! ( ( ( * n. borrow( ) ) == 10_u64 ) ) ;
162+ let i: Value < i32 > = Rc :: new ( RefCell :: new ( 0 ) ) ;
163+ ' loop_: while ( ( * i. borrow ( ) ) < 10 ) {
164+ assert ! ( ( ( ( * buf. borrow( ) ) [ ( * i. borrow( ) ) as usize ] as i32 ) == 0 ) ) ;
165+ ( * i. borrow_mut ( ) ) . prefix_inc ( ) ;
166+ }
167+ let i: Value < i32 > = Rc :: new ( RefCell :: new ( 10 ) ) ;
168+ ' loop_: while ( ( * i. borrow ( ) ) < 16 ) {
169+ assert ! ( ( ( ( * buf. borrow( ) ) [ ( * i. borrow( ) ) as usize ] as i32 ) == ( ( 'X' as u8 ) as i32 ) ) ) ;
170+ ( * i. borrow_mut ( ) ) . prefix_inc ( ) ;
171+ }
172+ {
173+ ( * stream. borrow ( ) ) . delete ( ) ;
174+ 0
175+ } ;
176+ if !( 0 != 0 ) {
177+ break ;
178+ }
116179 }
117- {
118- ( * stream. borrow ( ) ) . delete ( ) ;
119- 0
120- } ;
121180 return 0 ;
122181}
0 commit comments