|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0202 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 0202.
Report 0202 Actions
Problem Report Number 0202 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0202 Raised 1995-01-05 08:00 Updated 2003-03-13 08:00 Published 1995-01-18 08:00 Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.3.4 Test Identification XPG4.hdr/misc/iconv 9 Problem Summary TSD4.202 This problem is being caused by getenv() being used in a non-portable manner in cc09es.c (iconv-d.c.9) of XPG4.hdr/misc/iconv/L.iconv. The test should be doing an iconv_open("IBM-939", "IBM-932") sinc... Problem Text
This problem is being caused by getenv() being used in a non-portable
manner in cc09es.c (iconv-d.c.9) of XPG4.hdr/misc/iconv/L.iconv. The
test should be doing an iconv_open("IBM-939", "IBM-932") since those
are the VSX_CODESET variables we've configured. The variables are
obtained via two calls to getenv(), one after another. Obviously, the
test assumes that getenv() is going to return different character
pointers for each call. This cannot be expected according to the
standard which states "The string pointed to shall not be modified by
the program, but maybe overwritten by a subsequent call to the
{getenv} function". Our implementation used the same storage for each
return value, hence the string returned for the value for VSX_CODESET1
was overwritten by the string returned for the VSX_CODESET2 variable.
The string returned by the first call to getenv() must be copied to a
safe buffer before the second call.
We submitted a earlier waiver for getenv() being used in the same way
and causing a set of failures in another test. This waiver was
accepted as TSD4.182.Test Output
/tset/XPG4.hdr/misc/iconv/T.iconv 9 Failed
Test Description:
If the header file contains a macro definition for iconv, it evaluates
its arguments only once, fully protected by parentheses when
necessary, and protects its return value with parentheses.
Test Strategy:
INVOKE iconv() macro with an increment and assignment in each
argument.
CAST subscripted macro to (void) - this verifies the return value is
parenthesised.
VERIFY that increments occurred once and assignments gave correct
values.
Test Information:
Feature test macros: -D_XOPEN_SOURCE
Compiler or run-time messages or results:
iconv_open(IBM-932, IBM-932) failed
Feature test macros: -D_XOPEN_SOURCE -D_POSIX_SOURCE
Compiler or run-time messages or results:
iconv_open(IBM-932, IBM-932) failed
Feature test macros: -D_XOPEN_SOURCE -D_POSIX_C_SOURCE=1
Compiler or run-time messages or results:
iconv_open(IBM-932, IBM-932) failed
Feature test macros: -D_XOPEN_SOURCE -D_POSIX_C_SOURCE=2
Compiler or run-time messages or results:
iconv_open(IBM-932, IBM-932) failed
Feature test macros: -D_XOPEN_SOURCE -D_POSIX_SOURCE -D_POSIX_C_SOURCE=1
Compiler or run-time messages or results:
iconv_open(IBM-932, IBM-932) failed
Feature test macros: -D_XOPEN_SOURCE -D_POSIX_SOURCE -D_POSIX_C_SOURCE=2
Compiler or run-time messages or results:
iconv_open(IBM-932, IBM-932) failedReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
This accept as a test suite deficiency and a permanent waiver is recommended
on those grounds.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion
This is an agreed Test Suite Deficiency.
Problem Reporting System Options:
- View Report 0202
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority