// S : tags mstring todo $TAGS // S : expect --result valid // S : cc -o test.bc $CC_OPT $file // S : verify -o nofail:malloc $V_OPT test.bc // N : V : CC_OPT : V_OPT : TAGS : RESULT // V : sym : : --lamp symstring --symbolic : sym : valid // V : con : : --lamp constring : min : valid #include #include #include #include #include int main() { char buff1[5] = "aabb"; char * str = __lamp_lift_str( buff1 ); char * extended = (char *)realloc( str, 10 * sizeof( char ) ); char buff2[5] = "aabb"; char * expected = __lamp_lift_str( buff2 ); int i = 0; while ( expected[ i ] != '\0' ) { assert( extended[ i ] == expected[ i ] ); ++i; } assert( extended[ i ] == '\0' ); }