#3251 new defect

Test stringto01 fails on targets with an FPU that lacks support for subnormal numbers

Reported by: Sebastian Huber Owned by:
Priority: normal Milestone: Indefinite
Component: lib Version:
Severity: normal Keywords:
Cc: Blocked By:
Blocking:

Description

For example the QorIQ P2020 has an e500 core. The FPU of this core lacks support for subnormal numbers. The stringto01 test fails with:

*** BEGIN OF TEST STRINGTO 1 ***
*** TEST VERSION: 5.0.0.44c5b1c38093c005864c972000e8450a485bd8e5
*** TEST STATE: EXPECTED-PASS
*** TEST BUILD: smp legacy-net 
*** TEST TOOLS: 7.2.0 20170814 (RTEMS 5, RSB d1e6dfcb1e14d2f9d42c79e1137ddca6d8fc67d5, Newlib 2.5.0.20170922)

Testing rtems_string_to_pointer
rtems_string_to_pointer - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_pointer - 0x123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_pointer - 0x123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_pointer - xxx w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_pointer - empty string - w/endptr return value - RTEMS_NOT_DEFINED

Testing rtems_string_to_unsigned_char
rtems_string_to_unsigned_char - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_unsigned_char - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_char - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_char - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_char - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_char - overflow - RTEMS_INVALID_NUMBER
rtems_string_to_unsigned_char - overflow - RTEMS_INVALID_NUMBER

Testing rtems_string_to_int
rtems_string_to_int - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_int - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_int - MAXIMUM VALUE w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_int - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_int - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_int - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_int - overflow - RTEMS_INVALID_NUMBER
rtems_string_to_int- RTEMS_INVALID_NUMBER

Testing rtems_string_to_unsigned_int
rtems_string_to_unsigned_int - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_unsigned_int - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_int - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_int - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_int - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_int - overflow - RTEMS_INVALID_NUMBER

Testing rtems_string_to_long
rtems_string_to_long - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_long - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_long - MAXIMUM VALUE w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_long - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_long - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_long - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_long - overflow - RTEMS_INVALID_NUMBER
rtems_string_to_long- RTEMS_INVALID_NUMBER

Testing rtems_string_to_unsigned_long
rtems_string_to_unsigned_long - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_unsigned_long - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_long - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_long - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_long - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_long - overflow - RTEMS_INVALID_NUMBER

Testing rtems_string_to_long_long
rtems_string_to_long_long - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_long_long - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_long_long - MAXIMUM VALUE w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_long_long - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_long_long - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_long_long - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_long_long - overflow - RTEMS_INVALID_NUMBER
rtems_string_to_long_long- RTEMS_INVALID_NUMBER

Testing rtems_string_to_unsigned_long_long
rtems_string_to_unsigned_long_long - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_unsigned_long_long - 123 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_long_long - 123 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_unsigned_long_long - YYY w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_long_long - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_unsigned_long_long - overflow - RTEMS_INVALID_NUMBER

Testing rtems_string_to_float
rtems_string_to_float - NULL return value - RTEMS_INVALID_ADDRESS
rtems_string_to_float - 1.23 NULL endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_float - 1.23 w/endptr return value - RTEMS_SUCCESSFUL
rtems_string_to_float - zzz w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_float - empty string - w/endptr return value - RTEMS_NOT_DEFINED
rtems_string_to_float - overflow - RTEMS_INVALID_NUMBER
ERROR = RTEMS_SUCCESSFUL
estsuites/libtests/stringto01/stringto_test_template.h: 144 status == RTEMS_INVALID_NUMBER

Change History (0)

Note: See TracTickets for help on using tickets.