Skip to content
Snippets Groups Projects
string_c.res.oracle 54.89 KiB
[kernel] Parsing tests/libc/string_c.c (with preprocessing)
[eva] Analyzing a complete application starting at main
[eva] Computing initial state
[eva] Initial state computed
[eva:initial-state] Values of globals at initialization
  v ∈ [--..--]
[eva] computing for function test_memcpy <- main.
  Called from tests/libc/string_c.c:294.
[eva] computing for function memcpy <- test_memcpy <- main.
  Called from tests/libc/string_c.c:10.
[eva] tests/libc/string_c.c:10: 
  function memcpy: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:10: 
  function memcpy: precondition 'valid_src' got status valid.
[eva] tests/libc/string_c.c:10: 
  function memcpy: precondition 'separation' got status valid.
[eva] share/libc/string.h:101: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
[eva:alarm] share/libc/string.h:101: Warning: 
  function memcpy: postcondition 'copied_contents' got status unknown.
[eva] share/libc/string.h:102: 
  function memcpy: postcondition 'result_ptr' got status valid.
[eva] Recording results for memcpy
[eva] Done for function memcpy
[eva] tests/libc/string_c.c:11: assertion got status valid.
[eva] tests/libc/string_c.c:12: assertion got status valid.
[eva] tests/libc/string_c.c:13: assertion got status valid.
[eva] tests/libc/string_c.c:14: assertion got status valid.
[eva] computing for function memcpy <- test_memcpy <- main.
  Called from tests/libc/string_c.c:16.
[eva] tests/libc/string_c.c:16: 
  function memcpy: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:16: 
  function memcpy: precondition 'valid_src' got status valid.
[eva] tests/libc/string_c.c:16: 
  function memcpy: precondition 'separation' got status valid.
[eva] Recording results for memcpy
[eva] Done for function memcpy
[eva] tests/libc/string_c.c:17: assertion got status valid.
[eva] tests/libc/string_c.c:18: assertion got status valid.
[eva] computing for function memcpy <- test_memcpy <- main.
  Called from tests/libc/string_c.c:19.
[eva] tests/libc/string_c.c:19: 
  function memcpy: precondition 'valid_dest' got status valid.
[eva:alarm] tests/libc/string_c.c:19: Warning: 
  function memcpy: precondition 'valid_src' got status unknown.
[eva] tests/libc/string_c.c:19: 
  function memcpy: precondition 'separation' got status valid.
[eva] Recording results for memcpy
[eva] Done for function memcpy
[eva] computing for function memcpy <- test_memcpy <- main.
  Called from tests/libc/string_c.c:20.
[eva:alarm] tests/libc/string_c.c:20: Warning: 
  function memcpy: precondition 'valid_dest' got status unknown.
[eva:alarm] tests/libc/string_c.c:20: Warning: 
  function memcpy: precondition 'valid_src' got status unknown.
[eva] tests/libc/string_c.c:20: 
  function memcpy: precondition 'separation' got status valid.
[eva] Recording results for memcpy
[eva] Done for function memcpy
[eva] computing for function memcpy <- test_memcpy <- main.
  Called from tests/libc/string_c.c:23.
[eva] tests/libc/string_c.c:23: 
  function memcpy: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:23: 
  function memcpy: precondition 'valid_src' got status valid.
[eva] tests/libc/string_c.c:23: 
  function memcpy: precondition 'separation' got status valid.
[eva] Recording results for memcpy
[eva] Done for function memcpy
[eva] tests/libc/string_c.c:23: Reusing old results for call to memcpy
[eva] tests/libc/string_c.c:24: assertion got status valid.
[eva] tests/libc/string_c.c:25: assertion got status valid.
[eva] Recording results for test_memcpy
[eva] Done for function test_memcpy
[eva] computing for function test_memmove <- main.
  Called from tests/libc/string_c.c:295.
[eva] tests/libc/string_c.c:34: Frama_C_show_each_s0: {1}
[eva] tests/libc/string_c.c:35: Frama_C_show_each_s0: {2}
[eva] tests/libc/string_c.c:36: Frama_C_show_each_s0: {3}
[eva] tests/libc/string_c.c:37: Frama_C_show_each_s0: {4}
[eva] tests/libc/string_c.c:38: Frama_C_show_each_s0: {3}
[eva] tests/libc/string_c.c:39: Frama_C_show_each_s0: {4}
[eva] tests/libc/string_c.c:40: Frama_C_show_each_s0: {5}
[eva] tests/libc/string_c.c:41: Frama_C_show_each_s0: {6}
[eva] computing for function memmove <- test_memmove <- main.
  Called from tests/libc/string_c.c:42.
[eva] tests/libc/string_c.c:42: 
  function memmove: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:42: 
  function memmove: precondition 'valid_src' got status valid.
[eva] computing for function memoverlap <- memmove <- test_memmove <- main.
  Called from share/libc/string.c:93.
[eva] share/libc/string.c:75: 
  function memoverlap, behavior not_separated_gt: postcondition 'result_p_after_q' got status valid.
[eva] Recording results for memoverlap
[eva] Done for function memoverlap
[eva] share/libc/string.h:124: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
[eva:alarm] share/libc/string.h:124: Warning: 
  function memmove: postcondition 'copied_contents' got status unknown.
[eva] share/libc/string.h:125: 
  function memmove: postcondition 'result_ptr' got status valid.
[eva] Recording results for memmove
[eva] Done for function memmove
[eva] tests/libc/string_c.c:43: assertion got status valid.
[eva] tests/libc/string_c.c:44: assertion got status valid.
[eva] computing for function memmove <- test_memmove <- main.
  Called from tests/libc/string_c.c:49.
[eva] tests/libc/string_c.c:49: 
  function memmove: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:49: 
  function memmove: precondition 'valid_src' got status valid.
[eva] computing for function memoverlap <- memmove <- test_memmove <- main.
  Called from share/libc/string.c:93.
[eva] share/libc/string.c:71: 
  function memoverlap, behavior not_separated_lt: postcondition 'result_p_before_q' got status valid.
[eva] Recording results for memoverlap
[eva] Done for function memoverlap
[eva] Recording results for memmove
[eva] Done for function memmove
[eva] tests/libc/string_c.c:50: assertion got status valid.
[eva] computing for function memmove <- test_memmove <- main.
  Called from tests/libc/string_c.c:52.
[eva] tests/libc/string_c.c:52: 
  function memmove: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:52: 
  function memmove: precondition 'valid_src' got status valid.
[eva] computing for function memoverlap <- memmove <- test_memmove <- main.
  Called from share/libc/string.c:93.
[eva] Recording results for memoverlap
[eva] Done for function memoverlap
[eva] Recording results for memmove
[eva] Done for function memmove
[eva] tests/libc/string_c.c:53: assertion got status valid.
[eva] computing for function memmove <- test_memmove <- main.
  Called from tests/libc/string_c.c:56.
[eva] tests/libc/string_c.c:56: 
  function memmove: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:56: 
  function memmove: precondition 'valid_src' got status valid.
[eva] computing for function memoverlap <- memmove <- test_memmove <- main.
  Called from share/libc/string.c:93.
[eva] share/libc/string.c:67: 
  function memoverlap, behavior separated: postcondition 'result_no_overlap' got status valid.
[eva] Recording results for memoverlap
[eva] Done for function memoverlap
[eva] Recording results for memmove
[eva] Done for function memmove
[eva] tests/libc/string_c.c:57: assertion got status valid.
[eva] Recording results for test_memmove
[eva] Done for function test_memmove
[eva] computing for function test_strlen <- main.
  Called from tests/libc/string_c.c:296.
[eva] computing for function strlen <- test_strlen <- main.
  Called from tests/libc/string_c.c:64.
[eva] tests/libc/string_c.c:64: 
  function strlen: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.h:143: 
  function strlen: postcondition 'acsl_c_equiv' got status valid.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] tests/libc/string_c.c:65: assertion got status valid.
[eva] computing for function strlen <- test_strlen <- main.
  Called from tests/libc/string_c.c:66.
[eva] tests/libc/string_c.c:66: 
  function strlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] tests/libc/string_c.c:67: assertion got status valid.
[eva] computing for function strlen <- test_strlen <- main.
  Called from tests/libc/string_c.c:68.
[eva] tests/libc/string_c.c:68: 
  function strlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] tests/libc/string_c.c:69: assertion got status valid.
[eva] Recording results for test_strlen
[eva] Done for function test_strlen
[eva] computing for function test_strnlen <- main.
  Called from tests/libc/string_c.c:297.
[eva] computing for function strnlen <- test_strnlen <- main.
  Called from tests/libc/string_c.c:75.
[eva] tests/libc/string_c.c:75: 
  function strnlen: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.h:149: 
  function strnlen: postcondition 'result_bounded' got status valid.
[eva] Recording results for strnlen
[eva] Done for function strnlen
[eva] tests/libc/string_c.c:76: assertion got status valid.
[eva] computing for function strnlen <- test_strnlen <- main.
  Called from tests/libc/string_c.c:77.
[eva] tests/libc/string_c.c:77: 
  function strnlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strnlen
[eva] Done for function strnlen
[eva] tests/libc/string_c.c:78: assertion got status valid.
[eva] computing for function strnlen <- test_strnlen <- main.
  Called from tests/libc/string_c.c:79.
[eva] tests/libc/string_c.c:79: 
  function strnlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strnlen
[eva] Done for function strnlen
[eva] tests/libc/string_c.c:80: assertion got status valid.
[eva] computing for function strnlen <- test_strnlen <- main.
  Called from tests/libc/string_c.c:81.
[eva] tests/libc/string_c.c:81: 
  function strnlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strnlen
[eva] Done for function strnlen
[eva] tests/libc/string_c.c:82: assertion got status valid.
[eva] computing for function strnlen <- test_strnlen <- main.
  Called from tests/libc/string_c.c:83.
[eva] tests/libc/string_c.c:83: 
  function strnlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strnlen
[eva] Done for function strnlen
[eva] tests/libc/string_c.c:84: assertion got status valid.
[eva] computing for function strnlen <- test_strnlen <- main.
  Called from tests/libc/string_c.c:85.
[eva] tests/libc/string_c.c:85: 
  function strnlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strnlen
[eva] Done for function strnlen
[eva] tests/libc/string_c.c:86: assertion got status valid.
[eva] Recording results for test_strnlen
[eva] Done for function test_strnlen
[eva] computing for function test_memset <- main.
  Called from tests/libc/string_c.c:298.
[eva] computing for function memset <- test_memset <- main.
  Called from tests/libc/string_c.c:92.
[eva] tests/libc/string_c.c:92: 
  function memset: precondition 'valid_s' got status valid.
[eva] share/libc/string.h:134: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memset
[eva:alarm] share/libc/string.h:134: Warning: 
  function memset: postcondition 'acsl_c_equiv' got status unknown.
[eva] share/libc/string.h:135: 
  function memset: postcondition 'result_ptr' got status valid.
[eva] Recording results for memset
[eva] Done for function memset
[eva] tests/libc/string_c.c:93: assertion got status valid.
[eva] tests/libc/string_c.c:94: assertion got status valid.
[eva] tests/libc/string_c.c:95: assertion got status valid.
[eva] computing for function memset <- test_memset <- main.
  Called from tests/libc/string_c.c:96.
[eva] tests/libc/string_c.c:96: 
  function memset: precondition 'valid_s' got status valid.
[eva] Recording results for memset
[eva] Done for function memset
[eva] tests/libc/string_c.c:97: assertion got status valid.
[eva] Recording results for test_memset
[eva] Done for function test_memset
[eva] computing for function test_strcmp <- main.
  Called from tests/libc/string_c.c:299.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:104.
[eva] tests/libc/string_c.c:104: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:104: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] share/libc/string.h:156: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
[eva:alarm] share/libc/string.h:156: Warning: 
  function strcmp: postcondition 'acsl_c_equiv' got status unknown.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:105: assertion got status valid.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:106.
[eva] tests/libc/string_c.c:106: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:106: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:107: assertion got status valid.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:108.
[eva] tests/libc/string_c.c:108: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:108: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:109: assertion got status valid.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:110.
[eva] tests/libc/string_c.c:110: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:110: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:111: assertion got status valid.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:112.
[eva] tests/libc/string_c.c:112: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:112: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:113: assertion got status valid.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:114.
[eva] tests/libc/string_c.c:114: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:114: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:115: assertion got status valid.
[eva] computing for function strcmp <- test_strcmp <- main.
  Called from tests/libc/string_c.c:116.
[eva] tests/libc/string_c.c:116: 
  function strcmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:116: 
  function strcmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strcmp
[eva] Done for function strcmp
[eva] tests/libc/string_c.c:117: assertion got status valid.
[eva] Recording results for test_strcmp
[eva] Done for function test_strcmp
[eva] computing for function test_strncmp <- main.
  Called from tests/libc/string_c.c:300.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:167.
[eva] tests/libc/string_c.c:167: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:167: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] share/libc/string.h:163: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function strncmp
[eva:alarm] share/libc/string.h:163: Warning: 
  function strncmp: postcondition 'acsl_c_equiv' got status unknown.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:168: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:169.
[eva] tests/libc/string_c.c:169: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:169: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:170: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:172.
[eva] tests/libc/string_c.c:172: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:172: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:173: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:174.
[eva] tests/libc/string_c.c:174: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:174: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:175: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:176.
[eva] tests/libc/string_c.c:176: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:176: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:177: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:178.
[eva] tests/libc/string_c.c:178: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:178: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:179: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:180.
[eva] tests/libc/string_c.c:180: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:180: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:181: assertion got status valid.
[eva] computing for function strncmp <- test_strncmp <- main.
  Called from tests/libc/string_c.c:182.
[eva] tests/libc/string_c.c:182: 
  function strncmp: precondition 'valid_string_s1' got status valid.
[eva] tests/libc/string_c.c:182: 
  function strncmp: precondition 'valid_string_s2' got status valid.
[eva] Recording results for strncmp
[eva] Done for function strncmp
[eva] tests/libc/string_c.c:183: assertion got status valid.
[eva] Recording results for test_strncmp
[eva] Done for function test_strncmp
[eva] computing for function test_memcmp <- main.
  Called from tests/libc/string_c.c:301.
[eva] computing for function memcmp <- test_memcmp <- main.
  Called from tests/libc/string_c.c:188.
[eva] tests/libc/string_c.c:188: 
  function memcmp: precondition 'valid_s1' got status valid.
[eva] tests/libc/string_c.c:188: 
  function memcmp: precondition 'valid_s2' got status valid.
[eva] tests/libc/string_c.c:188: 
  function memcmp: precondition 'initialization,s1' got status valid.
[eva] tests/libc/string_c.c:188: 
  function memcmp: precondition 'initialization,s2' got status valid.
[eva] tests/libc/string_c.c:188: 
  function memcmp: precondition 'danglingness,s1' got status valid.
[eva] tests/libc/string_c.c:188: 
  function memcmp: precondition 'danglingness,s2' got status valid.
[eva] share/libc/string.h:63: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
[eva:alarm] share/libc/string.h:63: Warning: 
  function memcmp: postcondition 'logic_spec' got status unknown.
[eva] Recording results for memcmp
[eva] Done for function memcmp
[eva] tests/libc/string_c.c:189: assertion got status valid.
[eva] computing for function memcmp <- test_memcmp <- main.
  Called from tests/libc/string_c.c:190.
[eva] tests/libc/string_c.c:190: 
  function memcmp: precondition 'valid_s1' got status valid.
[eva] tests/libc/string_c.c:190: 
  function memcmp: precondition 'valid_s2' got status valid.
[eva] tests/libc/string_c.c:190: 
  function memcmp: precondition 'initialization,s1' got status valid.
[eva] tests/libc/string_c.c:190: 
  function memcmp: precondition 'initialization,s2' got status valid.
[eva] tests/libc/string_c.c:190: 
  function memcmp: precondition 'danglingness,s1' got status valid.
[eva] tests/libc/string_c.c:190: 
  function memcmp: precondition 'danglingness,s2' got status valid.
[eva] Recording results for memcmp
[eva] Done for function memcmp
[eva] tests/libc/string_c.c:191: assertion got status valid.
[eva] computing for function memcmp <- test_memcmp <- main.
  Called from tests/libc/string_c.c:192.
[eva] tests/libc/string_c.c:192: 
  function memcmp: precondition 'valid_s1' got status valid.
[eva] tests/libc/string_c.c:192: 
  function memcmp: precondition 'valid_s2' got status valid.
[eva] tests/libc/string_c.c:192: 
  function memcmp: precondition 'initialization,s1' got status valid.
[eva] tests/libc/string_c.c:192: 
  function memcmp: precondition 'initialization,s2' got status valid.
[eva] tests/libc/string_c.c:192: 
  function memcmp: precondition 'danglingness,s1' got status valid.
[eva] tests/libc/string_c.c:192: 
  function memcmp: precondition 'danglingness,s2' got status valid.
[eva] Recording results for memcmp
[eva] Done for function memcmp
[eva] tests/libc/string_c.c:193: assertion got status valid.
[eva] computing for function memcmp <- test_memcmp <- main.
  Called from tests/libc/string_c.c:194.
[eva] tests/libc/string_c.c:194: 
  function memcmp: precondition 'valid_s1' got status valid.
[eva] tests/libc/string_c.c:194: 
  function memcmp: precondition 'valid_s2' got status valid.
[eva] tests/libc/string_c.c:194: 
  function memcmp: precondition 'initialization,s1' got status valid.
[eva] tests/libc/string_c.c:194: 
  function memcmp: precondition 'initialization,s2' got status valid.
[eva] tests/libc/string_c.c:194: 
  function memcmp: precondition 'danglingness,s1' got status valid.
[eva] tests/libc/string_c.c:194: 
  function memcmp: precondition 'danglingness,s2' got status valid.
[eva] Recording results for memcmp
[eva] Done for function memcmp
[eva] tests/libc/string_c.c:195: assertion got status valid.
[eva] Recording results for test_memcmp
[eva] Done for function test_memcmp
[eva] computing for function test_strcat <- main.
  Called from tests/libc/string_c.c:302.
[eva] computing for function strcat <- test_strcat <- main.
  Called from tests/libc/string_c.c:124.
[eva] tests/libc/string_c.c:124: 
  function strcat: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:124: 
  function strcat: precondition 'valid_string_dest' got status valid.
[eva] tests/libc/string_c.c:124: 
  function strcat: precondition 'room_string' got status valid.
[eva] computing for function strlen <- strcat <- test_strcat <- main.
  Called from share/libc/string.c:198.
[eva] share/libc/string.c:198: 
  function strlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] share/libc/string.h:429: 
  function strcat: postcondition 'sum_of_lengths' got status valid.
[eva] share/libc/string.h:432: 
  function strcat: postcondition 'initialization,dest' got status valid.
[eva] share/libc/string.h:433: 
  function strcat: postcondition 'dest_null_terminated' got status valid.
[eva] share/libc/string.h:434: 
  function strcat: postcondition 'result_ptr' got status valid.
[eva] Recording results for strcat
[eva] Done for function strcat
[eva] tests/libc/string_c.c:125: assertion got status valid.
[eva] tests/libc/string_c.c:126: assertion got status valid.
[eva] computing for function strcat <- test_strcat <- main.
  Called from tests/libc/string_c.c:132.
[eva] tests/libc/string_c.c:132: 
  function strcat: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:132: 
  function strcat: precondition 'valid_string_dest' got status valid.
[eva] tests/libc/string_c.c:132: 
  function strcat: precondition 'room_string' got status valid.
[eva] computing for function strlen <- strcat <- test_strcat <- main.
  Called from share/libc/string.c:198.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] Recording results for strcat
[eva] Done for function strcat
[eva] tests/libc/string_c.c:133: assertion got status valid.
[eva] computing for function strcat <- test_strcat <- main.
  Called from tests/libc/string_c.c:134.
[eva] tests/libc/string_c.c:134: 
  function strcat: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:134: 
  function strcat: precondition 'valid_string_dest' got status valid.
[eva] tests/libc/string_c.c:134: 
  function strcat: precondition 'room_string' got status valid.
[eva] computing for function strlen <- strcat <- test_strcat <- main.
  Called from share/libc/string.c:198.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] Recording results for strcat
[eva] Done for function strcat
[eva] computing for function strcat <- test_strcat <- main.
  Called from tests/libc/string_c.c:135.
[eva] tests/libc/string_c.c:135: 
  function strcat: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:135: 
  function strcat: precondition 'valid_string_dest' got status valid.
[eva] tests/libc/string_c.c:135: 
  function strcat: precondition 'room_string' got status valid.
[eva] share/libc/string.c:198: Reusing old results for call to strlen
[eva] Recording results for strcat
[eva] Done for function strcat
[eva] tests/libc/string_c.c:136: assertion got status valid.
[eva] Recording results for test_strcat
[eva] Done for function test_strcat
[eva] computing for function test_strcpy <- main.
  Called from tests/libc/string_c.c:304.
[eva] computing for function strcpy <- test_strcpy <- main.
  Called from tests/libc/string_c.c:142.
[eva] tests/libc/string_c.c:142: 
  function strcpy: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:142: 
  function strcpy: precondition 'room_string' got status valid.
[eva] tests/libc/string_c.c:142: 
  function strcpy: precondition 'separation' got status valid.
[eva] share/libc/string.h:373: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
[eva:alarm] share/libc/string.h:373: Warning: 
  function strcpy: postcondition 'equal_contents' got status unknown.
[eva] share/libc/string.h:374: 
  function strcpy: postcondition 'result_ptr' got status valid.
[eva] Recording results for strcpy
[eva] Done for function strcpy
[eva] tests/libc/string_c.c:143: assertion got status valid.
[eva] tests/libc/string_c.c:144: assertion got status valid.
[eva] computing for function strcpy <- test_strcpy <- main.
  Called from tests/libc/string_c.c:145.
[eva] tests/libc/string_c.c:145: 
  function strcpy: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:145: 
  function strcpy: precondition 'room_string' got status valid.
[eva] tests/libc/string_c.c:145: 
  function strcpy: precondition 'separation' got status valid.
[eva] Recording results for strcpy
[eva] Done for function strcpy
[eva] tests/libc/string_c.c:146: assertion got status valid.
[eva] computing for function strcpy <- test_strcpy <- main.
  Called from tests/libc/string_c.c:147.
[eva] tests/libc/string_c.c:147: 
  function strcpy: precondition 'valid_string_src' got status valid.
[eva] tests/libc/string_c.c:147: 
  function strcpy: precondition 'room_string' got status valid.
[eva] tests/libc/string_c.c:147: 
  function strcpy: precondition 'separation' got status valid.
[eva] Recording results for strcpy
[eva] Done for function strcpy
[eva] tests/libc/string_c.c:148: assertion got status valid.
[eva] Recording results for test_strcpy
[eva] Done for function test_strcpy
[eva] computing for function test_strncpy <- main.
  Called from tests/libc/string_c.c:305.
[eva] computing for function strncpy <- test_strncpy <- main.
  Called from tests/libc/string_c.c:154.
[eva] tests/libc/string_c.c:154: 
  function strncpy: precondition 'valid_nstring_src' got status valid.
[eva] tests/libc/string_c.c:154: 
  function strncpy: precondition 'room_nstring' got status valid.
[eva] tests/libc/string_c.c:154: 
  function strncpy: precondition 'separation' got status valid.
[eva] share/libc/string.h:385: 
  function strncpy: postcondition 'result_ptr' got status valid.
[eva] share/libc/string.h:386: 
  function strncpy: postcondition 'initialization' got status valid.
[eva] share/libc/string.h:389: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function strcmp
[eva:alarm] share/libc/string.h:389: Warning: 
  function strncpy, behavior complete: postcondition 'equal_after_copy' got status unknown.
[eva] Recording results for strncpy
[eva] Done for function strncpy
[eva] tests/libc/string_c.c:155: assertion got status valid.
[eva] tests/libc/string_c.c:156: assertion got status valid.
[eva] computing for function strncpy <- test_strncpy <- main.
  Called from tests/libc/string_c.c:157.
[eva] tests/libc/string_c.c:157: 
  function strncpy: precondition 'valid_nstring_src' got status valid.
[eva] tests/libc/string_c.c:157: 
  function strncpy: precondition 'room_nstring' got status valid.
[eva] tests/libc/string_c.c:157: 
  function strncpy: precondition 'separation' got status valid.
[eva] share/libc/string.h:392: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
[eva:alarm] share/libc/string.h:392: Warning: 
  function strncpy, behavior partial: postcondition 'equal_prefix' got status unknown.
[eva] Recording results for strncpy
[eva] Done for function strncpy
[eva] tests/libc/string_c.c:158: assertion got status valid.
[eva] computing for function strncpy <- test_strncpy <- main.
  Called from tests/libc/string_c.c:159.
[eva] tests/libc/string_c.c:159: 
  function strncpy: precondition 'valid_nstring_src' got status valid.
[eva] tests/libc/string_c.c:159: 
  function strncpy: precondition 'room_nstring' got status valid.
[eva] tests/libc/string_c.c:159: 
  function strncpy: precondition 'separation' got status valid.
[eva] Recording results for strncpy
[eva] Done for function strncpy
[eva] tests/libc/string_c.c:160: assertion got status valid.
[eva] computing for function strncpy <- test_strncpy <- main.
  Called from tests/libc/string_c.c:161.
[eva] tests/libc/string_c.c:161: 
  function strncpy: precondition 'valid_nstring_src' got status valid.
[eva] tests/libc/string_c.c:161: 
  function strncpy: precondition 'room_nstring' got status valid.
[eva] tests/libc/string_c.c:161: 
  function strncpy: precondition 'separation' got status valid.
[eva] Recording results for strncpy
[eva] Done for function strncpy
[eva] tests/libc/string_c.c:162: assertion got status valid.
[eva] Recording results for test_strncpy
[eva] Done for function test_strncpy
[eva] computing for function test_strchr <- main.
  Called from tests/libc/string_c.c:306.
[eva] computing for function strchr <- test_strchr <- main.
  Called from tests/libc/string_c.c:201.
[eva] tests/libc/string_c.c:201: 
  function strchr: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.h:177: 
  function strchr, behavior found: postcondition 'result_char' got status valid.
[eva] share/libc/string.h:178: 
  function strchr, behavior found: postcondition 'result_same_base' got status valid.
[eva] share/libc/string.h:179: 
  function strchr, behavior found: postcondition 'result_in_length' got status valid.
[eva] share/libc/string.h:180: 
  function strchr, behavior found: postcondition 'result_valid_string' got status valid.
[eva] share/libc/string.h:181: 
  cannot evaluate ACSL term, unsupported logic var p
[eva:alarm] share/libc/string.h:181: Warning: 
  function strchr, behavior found: postcondition 'result_first_occur' got status unknown.
[eva] share/libc/string.h:187: 
  function strchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
[eva] Recording results for strchr
[eva] Done for function strchr
[eva] tests/libc/string_c.c:202: assertion got status valid.
[eva] computing for function strchr <- test_strchr <- main.
  Called from tests/libc/string_c.c:203.
[eva] tests/libc/string_c.c:203: 
  function strchr: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.h:184: 
  function strchr, behavior not_found: postcondition 'result_null' got status valid.
[eva] Recording results for strchr
[eva] Done for function strchr
[eva] tests/libc/string_c.c:204: assertion got status valid.
[eva] computing for function strchr <- test_strchr <- main.
  Called from tests/libc/string_c.c:205.
[eva] tests/libc/string_c.c:205: 
  function strchr: precondition 'valid_string_s' got status valid.
[eva] Recording results for strchr
[eva] Done for function strchr
[eva] tests/libc/string_c.c:206: assertion got status valid.
[eva] computing for function strchr <- test_strchr <- main.
  Called from tests/libc/string_c.c:207.
[eva] tests/libc/string_c.c:207: 
  function strchr: precondition 'valid_string_s' got status valid.
[eva] Recording results for strchr
[eva] Done for function strchr
[eva] tests/libc/string_c.c:208: assertion got status valid.
[eva] Recording results for test_strchr
[eva] Done for function test_strchr
[eva] computing for function test_strrchr <- main.
  Called from tests/libc/string_c.c:307.
[eva] computing for function strrchr <- test_strrchr <- main.
  Called from tests/libc/string_c.c:214.
[eva] tests/libc/string_c.c:214: 
  function strrchr: precondition 'valid_string_s' got status valid.
[eva] computing for function strlen <- strrchr <- test_strrchr <- main.
  Called from share/libc/string.c:263.
[eva] share/libc/string.c:263: 
  function strlen: precondition 'valid_string_s' got status valid.
[eva] Recording results for strlen
[eva] Done for function strlen
[eva] share/libc/string.h:201: 
  function strrchr, behavior found: postcondition 'result_char' got status valid.
[eva] share/libc/string.h:202: 
  function strrchr, behavior found: postcondition 'result_same_base' got status valid.
[eva] share/libc/string.h:203: 
  function strrchr, behavior found: postcondition 'result_valid_string' got status valid.
[eva] share/libc/string.h:209: 
  function strrchr, behavior default: postcondition 'result_null_or_same_base' got status valid.
[eva] Recording results for strrchr
[eva] Done for function strrchr
[eva] tests/libc/string_c.c:215: assertion got status valid.
[eva] computing for function strrchr <- test_strrchr <- main.
  Called from tests/libc/string_c.c:216.
[eva] tests/libc/string_c.c:216: 
  function strrchr: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.c:263: Reusing old results for call to strlen
[eva] share/libc/string.h:206: 
  function strrchr, behavior not_found: postcondition 'result_null' got status valid.
[eva] Recording results for strrchr
[eva] Done for function strrchr
[eva] tests/libc/string_c.c:217: assertion got status valid.
[eva] computing for function strrchr <- test_strrchr <- main.
  Called from tests/libc/string_c.c:218.
[eva] tests/libc/string_c.c:218: 
  function strrchr: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.c:263: Reusing old results for call to strlen
[eva] Recording results for strrchr
[eva] Done for function strrchr
[eva] tests/libc/string_c.c:219: assertion got status valid.
[eva] computing for function strrchr <- test_strrchr <- main.
  Called from tests/libc/string_c.c:220.
[eva] tests/libc/string_c.c:220: 
  function strrchr: precondition 'valid_string_s' got status valid.
[eva] share/libc/string.c:263: Reusing old results for call to strlen
[eva] Recording results for strrchr
[eva] Done for function strrchr
[eva] tests/libc/string_c.c:221: assertion got status valid.
[eva] Recording results for test_strrchr
[eva] Done for function test_strrchr
[eva] computing for function test_memchr <- main.
  Called from tests/libc/string_c.c:308.
[eva] computing for function memchr <- test_memchr <- main.
  Called from tests/libc/string_c.c:227.
[eva] tests/libc/string_c.c:227: 
  function memchr: precondition 'valid' got status valid.
[eva] tests/libc/string_c.c:227: 
  function memchr: precondition 'initialization' got status valid.
[eva] tests/libc/string_c.c:227: 
  function memchr: precondition 'danglingness' got status valid.
[eva] share/libc/string.h:78: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memchr
[eva] share/libc/string.h:85: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memchr
[eva] share/libc/string.h:79: 
  function memchr, behavior found: postcondition 'result_same_base' got status valid. (Behavior may be inactive, no reduction performed.)
[eva] share/libc/string.h:80: 
  function memchr, behavior found: postcondition 'result_char' got status valid. (Behavior may be inactive, no reduction performed.)
[eva] share/libc/string.h:81: 
  function memchr, behavior found: postcondition 'result_in_str' got status valid. (Behavior may be inactive, no reduction performed.)
[eva:alarm] share/libc/string.h:86: Warning: 
  function memchr, behavior not_found: postcondition 'result_null' got status invalid. (Behavior may be inactive, no reduction performed.)
[eva] Recording results for memchr
[eva] Done for function memchr
[eva] tests/libc/string_c.c:228: assertion got status valid.
[eva] computing for function memchr <- test_memchr <- main.
  Called from tests/libc/string_c.c:229.
[eva] tests/libc/string_c.c:229: 
  function memchr: precondition 'valid' got status valid.
[eva] tests/libc/string_c.c:229: 
  function memchr: precondition 'initialization' got status valid.
[eva] tests/libc/string_c.c:229: 
  function memchr: precondition 'danglingness' got status valid.
[eva:alarm] share/libc/string.h:79: Warning: 
  function memchr, behavior found: postcondition 'result_same_base' got status invalid. (Behavior may be inactive, no reduction performed.)
[eva:alarm] share/libc/string.h:80: Warning: 
  function memchr, behavior found: postcondition 'result_char' got status unknown. (Behavior may be inactive, no reduction performed.)
[eva] share/libc/string.h:86: 
  function memchr, behavior not_found: postcondition 'result_null' got status valid. (Behavior may be inactive, no reduction performed.)
[eva] Recording results for memchr
[eva] Done for function memchr
[eva] tests/libc/string_c.c:230: assertion got status valid.
[eva] computing for function memchr <- test_memchr <- main.
  Called from tests/libc/string_c.c:231.
[eva] tests/libc/string_c.c:231: 
  function memchr: precondition 'valid' got status valid.
[eva] tests/libc/string_c.c:231: 
  function memchr: precondition 'initialization' got status valid.
[eva] tests/libc/string_c.c:231: 
  function memchr: precondition 'danglingness' got status valid.
[eva:alarm] share/libc/string.h:81: Warning: 
  function memchr, behavior found: postcondition 'result_in_str' got status unknown. (Behavior may be inactive, no reduction performed.)
[eva] Recording results for memchr
[eva] Done for function memchr
[eva] tests/libc/string_c.c:232: assertion got status valid.
[eva] computing for function memchr <- test_memchr <- main.
  Called from tests/libc/string_c.c:233.
[eva] tests/libc/string_c.c:233: 
  function memchr: precondition 'valid' got status valid.
[eva] tests/libc/string_c.c:233: 
  function memchr: precondition 'initialization' got status valid.
[eva] tests/libc/string_c.c:233: 
  function memchr: precondition 'danglingness' got status valid.
[eva] Recording results for memchr
[eva] Done for function memchr
[eva] tests/libc/string_c.c:234: assertion got status valid.
[eva] computing for function memchr <- test_memchr <- main.
  Called from tests/libc/string_c.c:235.
[eva] tests/libc/string_c.c:235: 
  function memchr: precondition 'valid' got status valid.
[eva] tests/libc/string_c.c:235: 
  function memchr: precondition 'initialization' got status valid.
[eva] tests/libc/string_c.c:235: 
  function memchr: precondition 'danglingness' got status valid.
[eva] Recording results for memchr
[eva] Done for function memchr
[eva] tests/libc/string_c.c:236: assertion got status valid.
[eva] computing for function memchr <- test_memchr <- main.
  Called from tests/libc/string_c.c:237.
[eva] tests/libc/string_c.c:237: 
  function memchr: precondition 'valid' got status valid.
[eva] tests/libc/string_c.c:237: 
  function memchr: precondition 'initialization' got status valid.
[eva] tests/libc/string_c.c:237: 
  function memchr: precondition 'danglingness' got status valid.
[eva] Recording results for memchr
[eva] Done for function memchr
[eva] tests/libc/string_c.c:238: assertion got status valid.
[eva] Recording results for test_memchr
[eva] Done for function test_memchr
[eva] computing for function test_memrchr <- main.
  Called from tests/libc/string_c.c:309.
[eva] computing for function memrchr <- test_memrchr <- main.
  Called from tests/libc/string_c.c:244.
[eva] Recording results for memrchr
[eva] Done for function memrchr
[eva] tests/libc/string_c.c:245: assertion got status valid.
[eva] computing for function memrchr <- test_memrchr <- main.
  Called from tests/libc/string_c.c:246.
[eva] Recording results for memrchr
[eva] Done for function memrchr
[eva] tests/libc/string_c.c:247: assertion got status valid.
[eva] computing for function memrchr <- test_memrchr <- main.
  Called from tests/libc/string_c.c:248.
[eva] Recording results for memrchr
[eva] Done for function memrchr
[eva] tests/libc/string_c.c:249: assertion got status valid.
[eva] computing for function memrchr <- test_memrchr <- main.
  Called from tests/libc/string_c.c:250.
[eva] Recording results for memrchr
[eva] Done for function memrchr
[eva] tests/libc/string_c.c:251: assertion got status valid.
[eva] computing for function memrchr <- test_memrchr <- main.
  Called from tests/libc/string_c.c:252.
[eva] Recording results for memrchr
[eva] Done for function memrchr
[eva] tests/libc/string_c.c:253: assertion got status valid.
[eva] computing for function memrchr <- test_memrchr <- main.
  Called from tests/libc/string_c.c:254.
[eva] Recording results for memrchr
[eva] Done for function memrchr
[eva] tests/libc/string_c.c:255: assertion got status valid.
[eva] Recording results for test_memrchr
[eva] Done for function test_memrchr
[eva] computing for function test_strstr <- main.
  Called from tests/libc/string_c.c:310.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:261.
[eva] tests/libc/string_c.c:261: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:261: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] share/libc/string.h:243: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
[eva:alarm] share/libc/string.h:241: Warning: 
  function strstr: postcondition 'result_null_or_in_haystack' got status unknown.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:262: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:263.
[eva] tests/libc/string_c.c:263: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:263: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:264: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:265.
[eva] tests/libc/string_c.c:265: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:265: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] share/libc/string.h:241: 
  function strstr: postcondition 'result_null_or_in_haystack' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:266: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:267.
[eva] tests/libc/string_c.c:267: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:267: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:268: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:269.
[eva] tests/libc/string_c.c:269: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:269: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:270: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:271.
[eva] tests/libc/string_c.c:271: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:271: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:272: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:273.
[eva] tests/libc/string_c.c:273: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:273: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:274: assertion got status valid.
[eva] computing for function strstr <- test_strstr <- main.
  Called from tests/libc/string_c.c:275.
[eva] tests/libc/string_c.c:275: 
  function strstr: precondition 'valid_string_haystack' got status valid.
[eva] tests/libc/string_c.c:275: 
  function strstr: precondition 'valid_string_needle' got status valid.
[eva] Recording results for strstr
[eva] Done for function strstr
[eva] tests/libc/string_c.c:276: assertion got status valid.
[eva] Recording results for test_strstr
[eva] Done for function test_strstr
[eva] computing for function test_mempcpy <- main.
  Called from tests/libc/string_c.c:314.
[eva] computing for function mempcpy <- test_mempcpy <- main.
  Called from tests/libc/string_c.c:282.
[eva] tests/libc/string_c.c:282: 
  function mempcpy: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:282: 
  function mempcpy: precondition 'valid_src' got status valid.
[eva] tests/libc/string_c.c:282: 
  function mempcpy: precondition 'separation' got status valid.
[eva] share/libc/string.h:114: 
  cannot evaluate ACSL term, unsupported ACSL construct: logic function memcmp
[eva:alarm] share/libc/string.h:114: Warning: 
  function mempcpy: postcondition 'copied_contents' got status unknown.
[kernel] share/libc/string.c:57: Warning: using size of 'void'
[eva:alarm] share/libc/string.h:115: Warning: 
  function mempcpy: postcondition 'result_next_byte' got status unknown.
[eva] Recording results for mempcpy
[eva] Done for function mempcpy
[eva] tests/libc/string_c.c:283: assertion got status valid.
[eva] tests/libc/string_c.c:284: assertion got status valid.
[eva] computing for function mempcpy <- test_mempcpy <- main.
  Called from tests/libc/string_c.c:286.
[eva] tests/libc/string_c.c:286: 
  function mempcpy: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:286: 
  function mempcpy: precondition 'valid_src' got status valid.
[eva] tests/libc/string_c.c:286: 
  function mempcpy: precondition 'separation' got status valid.
[eva] Recording results for mempcpy
[eva] Done for function mempcpy
[eva] tests/libc/string_c.c:287: assertion got status valid.
[eva] computing for function mempcpy <- test_mempcpy <- main.
  Called from tests/libc/string_c.c:288.
[eva] tests/libc/string_c.c:288: 
  function mempcpy: precondition 'valid_dest' got status valid.
[eva] tests/libc/string_c.c:288: 
  function mempcpy: precondition 'valid_src' got status valid.
[eva] tests/libc/string_c.c:288: 
  function mempcpy: precondition 'separation' got status valid.
[eva] Recording results for mempcpy
[eva] Done for function mempcpy
[eva] tests/libc/string_c.c:289: assertion got status valid.
[eva] Recording results for test_mempcpy
[eva] Done for function test_mempcpy
[eva] Recording results for main
[eva] done for function main
[eva] ====== VALUES COMPUTED ======
[eva:final-states] Values at end of function memchr:
  ch ∈ {1; 2; 5}
  ss ∈ {{ (unsigned char const *)&s }}
  __retres ∈ {{ NULL ; (void *)&s{[0], [1]} }}
[eva:final-states] Values at end of function memcmp:
  p1 ∈ {{ "hallo" ; "hallo" ; "a\000b" ; "a\000b" }}
  p2 ∈ {{ (unsigned char const *)&hello ; "a\000c" ; "a\000c" }}
  __retres ∈ {-4; -1; 0}
[eva:final-states] Values at end of function memcpy:
  dest[0] ∈ {65; 97; 104}
      [1] ∈ {0; 56; 101}
      [2] ∈ {9; 98; 108}
      [3] ∈ {0; 18; 108}
      [4] ∈ {0; 111}
      [5] ∈ {0}
[eva:final-states] Values at end of function memoverlap:
  p1 ∈ {{ (unsigned int)&buf{[0], [2], [3]} }}
  p2 ∈ {{ (unsigned int)&buf{[4], [6]} }}
  q1 ∈ {{ (unsigned int)&buf{[0], [2]} }}
  q2 ∈ {{ (unsigned int)&buf{[3], [4], [6]} }}
  __retres ∈ {-1; 0; 1}
[eva:final-states] Values at end of function memmove:
  s ∈ {{ &buf{[0], [2]} }}
  d ∈ {{ &buf{[0], [2], [3]} }}
  buf[0] ∈ {1; 3}
     [1] ∈ {2; 4}
     [2] ∈ {1; 5}
     [3] ∈ {2; 3; 6}
     [4] ∈ {3; 4; 5}
     [5] ∈ {4; 5; 6}
  __retres ∈ {{ (void *)&buf{[0], [2], [3]} }}
[eva:final-states] Values at end of function mempcpy:
  i ∈ {0; 3; 6}
  dest[0] ∈ {97; 104}
      [1] ∈ {0; 101}
      [2] ∈ {98; 108}
      [3] ∈ {108}
      [4] ∈ {111}
      [5] ∈ {0}
  __retres ∈ {{ (void *)&dest{[0], [3], [6]} }}
[eva:final-states] Values at end of function memrchr:
  ch ∈ {1; 2; 5}
  ss ∈ {{ (unsigned char const *)&s }}
  __retres ∈ {{ NULL ; (void *)&s{[0], [3], [4]} }}
[eva:final-states] Values at end of function memset:
  p ∈ {{ (unsigned char *)&dest }}
  dest[0..2] ∈ {42}
      [3] ∈ {0}
[eva:final-states] Values at end of function strchr:
  ch ∈ {0; 72; 104; 108}
  i ∈ {0; 2; 5}
  __retres ∈ {{ NULL ; "hello" + {0; 2; 5} }}
[eva:final-states] Values at end of function strcmp:
  i ∈ {0; 1; 4; 5}
  __retres ∈ {-111; -104; -32; 0; 111}
[eva:final-states] Values at end of function strcpy:
  i ∈ {0; 5; 6}
  s[0] ∈ {0; 54; 104}
   [1] ∈ {53; 101}
   [2] ∈ {52; 108}
   [3] ∈ {51; 108}
   [4] ∈ {50; 111}
   [5] ∈ {0; 49}
   [6] ∈ {0} or UNINITIALIZED
[eva:final-states] Values at end of function strlen:
  i ∈ {0; 2; 4; 5; 7}
[eva:final-states] Values at end of function strcat:
  i ∈ {0; 1; 3; 5}
  n ∈ {0; 4; 7}
  s[0] ∈ {104}
   [1] ∈ {101}
   [2..3] ∈ {108}
   [4] ∈ {104; 111}
   [5] ∈ {0; 101}
   [6] ∈ {108} or UNINITIALIZED
   [7] ∈ {0; 120} or UNINITIALIZED
   [8] ∈ {0} or UNINITIALIZED
   [9] ∈ UNINITIALIZED
[eva:final-states] Values at end of function strncmp:
  __retres ∈ {-104; -4; 0; 111}
[eva:final-states] Values at end of function strncpy:
  i ∈ {0; 3; 5; 7}
  s[0] ∈ {97; 98; 104}
   [1] ∈ {98; 101; 121}
   [2] ∈ {0; 101; 108}
   [3] ∈ {0; 108}
   [4] ∈ {0; 111}
   [5..6] ∈ {0}
[eva:final-states] Values at end of function strnlen:
  i ∈ {0; 2; 4; 5}
[eva:final-states] Values at end of function strrchr:
  ch ∈ {0; 72; 104; 108}
  __retres ∈ {{ NULL ; "hello" + {0; 3; 5} }}
[eva:final-states] Values at end of function strstr:
  __retres ∈ {{ NULL ; "hello" + {0; 2; 3} }}
[eva:final-states] Values at end of function test_memchr:
  s[0] ∈ {1}
   [1] ∈ {2}
   [2] ∈ {3}
   [3] ∈ {1}
   [4] ∈ {2}
   [5] ∈ {4}
  p ∈ {{ &s[0] }}
[eva:final-states] Values at end of function test_memcmp:
  hello[0] ∈ {104}
       [1] ∈ {101}
       [2..3] ∈ {108}
       [4] ∈ {111}
       [5] ∈ {0}
  res1 ∈ {-4}
  res2 ∈ {0}
  res3 ∈ {0}
  res4 ∈ {-1}
[eva:final-states] Values at end of function test_memcpy:
  dest[0] ∈ {65}
      [1] ∈ {56}
      [2] ∈ {9}
      [3] ∈ {18}
      [4..5] ∈ {0}
  src[0] ∈ {104}
     [1] ∈ {101}
     [2..3] ∈ {108}
     [4] ∈ {111}
     [5] ∈ {0}
  p ∈ {{ NULL ; &dest[0] }}
  src2[0] ∈ {97}
      [1] ∈ {0}
      [2] ∈ {98}
      [3..4] ∈ {0}
  x ∈ {302594113}
[eva:final-states] Values at end of function test_memmove:
  buf[0] ∈ {3}
     [1] ∈ {4}
     [2] ∈ {5}
     [3] ∈ {3}
     [4] ∈ {4}
     [5] ∈ {5}
  s ∈ {{ &buf[0] }}
  d ∈ {{ &buf[3] }}
  p ∈ {{ &buf[2] }}
[eva:final-states] Values at end of function test_mempcpy:
  dest[0] ∈ {97}
      [1] ∈ {0}
      [2] ∈ {98}
      [3] ∈ {108}
      [4] ∈ {111}
      [5] ∈ {0}
  src[0] ∈ {104}
     [1] ∈ {101}
     [2..3] ∈ {108}
     [4] ∈ {111}
     [5] ∈ {0}
  p ∈ {{ &dest[0] }}
  src2[0] ∈ {97}
      [1] ∈ {0}
      [2] ∈ {98}
      [3..4] ∈ {0}
[eva:final-states] Values at end of function test_memrchr:
  s[0] ∈ {1}
   [1] ∈ {2}
   [2] ∈ {3}
   [3] ∈ {1}
   [4] ∈ {2}
   [5] ∈ {4}
  p ∈ {{ &s[0] }}
[eva:final-states] Values at end of function test_memset:
  dest[0..2] ∈ {42}
      [3] ∈ {0}
  p ∈ {{ &dest[0] }}
[eva:final-states] Values at end of function test_strcat:
  s[0] ∈ {104}
   [1] ∈ {101}
   [2..3] ∈ {108}
   [4] ∈ {104}
   [5] ∈ {101}
   [6] ∈ {108}
   [7] ∈ {120}
   [8] ∈ {0}
   [9] ∈ UNINITIALIZED
  p ∈ {{ &s[0] }}
[eva:final-states] Values at end of function test_strchr:
  s ∈ {{ "hello" }}
  p ∈ {{ "hello" + {5} }}
[eva:final-states] Values at end of function test_strcmp:
  hello[0] ∈ {104}
       [1] ∈ {97}
       [2..3] ∈ {108}
       [4] ∈ {111}
       [5] ∈ {0}
  res ∈ {0}
  res2 ∈ {-111}
  res3 ∈ {111}
  res4 ∈ {-32}
  res5 ∈ {-104}
  res6 ∈ {0}
  res7 ∈ {0}
[eva:final-states] Values at end of function test_strcpy:
  s[0] ∈ {0}
   [1] ∈ {53}
   [2] ∈ {52}
   [3] ∈ {51}
   [4] ∈ {50}
   [5] ∈ {49}
   [6] ∈ {0}
  p ∈ {{ &s[0] }}
[eva:final-states] Values at end of function test_strlen:
  s ∈ {{ "hello" }}
  n ∈ {0}
[eva:final-states] Values at end of function test_strncmp:
  hello[0] ∈ {104}
       [1] ∈ {97}
       [2..3] ∈ {108}
       [4] ∈ {111}
       [5] ∈ {0}
  res1 ∈ {-4}
  res2 ∈ {0}
  res3 ∈ {0}
  res4 ∈ {111}
  res5 ∈ {0}
  res6 ∈ {-104}
  res7 ∈ {0}
  res8 ∈ {0}
[eva:final-states] Values at end of function test_strncpy:
  s[0] ∈ {97}
   [1] ∈ {98}
   [2..6] ∈ {0}
  p ∈ {{ &s[0] }}
[eva:final-states] Values at end of function test_strnlen:
  s ∈ {{ "hello" }}
  n ∈ {0}
[eva:final-states] Values at end of function test_strrchr:
  s ∈ {{ "hello" }}
  p ∈ {{ "hello" + {5} }}
[eva:final-states] Values at end of function test_strstr:
  s ∈ {{ "hello" }}
  p ∈ {{ "hello" }}
[eva:final-states] Values at end of function main:
  __retres ∈ {0}