|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0718 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 0718.
Report 0718 Actions
Problem Report Number 0718 Submitter's Classification Specification problem State Resolved Resolution Permanent Interpretation (PIN) Problem Resolution ID PIN.X.0111 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published 1995-06-16 08:00 Product Standard Commands and Utilities V2 (UNIX 95) Certification Program The Open Brand certification program Test Suite VSC version 4.1.3 Test Identification vsc/tset/m4 26, 27 Specification Commands and Utilities Issue 4 Version 2 Location in Spec See Problem Text Problem Summary PIN4C.00003 Spec defined behavior changed from XPG3 to XPG4. Problem Text
The X/Open Specification, Commands and Utilities Issue 4, Version 2 states:
"If the first argument to the ifdef macro is defined and it is not defined to
be zero, the defining text is the second argument. Otherwise, the defining
text is the third argument, if specified, or the null string, if not."
Assertion 26 states:
"When the first argument of built-in 'ifdef' macro is not defined or is zero,
then the macro value shall be the third argument."
Assertion 27 states:
"When the first argument of built-in 'ifdef' macro is not defined or is zero
and there is no third argument, then the macro value shall be null."
The assertions are being tested correctly, however it was not intended that
m4 be changed from historic practise. XCU4 tried to expand the SVID-like
description in XCU3 into a POSIX.2-like description in XCU4, and the new
description differs from historic System V practise.
The X/Open Specification should state:
"If the first argument to the ifdef macro is defined,
the defining text is the second argument. Otherwise, the defining
text is the third argument, if specified, or the null string, if not."
Assertion 26 should state:
"When the first argument of built-in 'ifdef' macro is not defined,
then the macro value shall be the third argument."
Assertion 27 should state:
"When the first argument of built-in 'ifdef' macro is not defined
and there is no third argument, then the macro value shall be null."Test Output
Assertion #26 (C):
-37- Output differs from expected output.
Assertion Result: FAIL
Assertion #27 (C):
-38- Output differs from expected output.
Assertion Result: FAILReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
On the manual page for m4, the original (XPG3) text read:
"If the first argument is defined, the value is the second argument,
otherwise it is the third. If there is no third argument, the value is null."
The XPG4 text reads:
"If the first argument to the ifdef macro is defined and it is not defined
to be zero, the defining text is the second argument. Otherwise, the
defining text is the third argument, if specified, or the null string, if not."
The changes in the definitions will clearly lead to a difference in
behaviour. The question raised in the waiver request centres on the issue of
whether or not this change in behaviour was intended. If this was intended,
then the test suite is correct and the waiver should be denied. If not, then
both the specification and the test suite need to be modified, and the
waiver should be granted. The question of intent should be passed to the
Base Working Group to be resolved.
On the assumption that the change of specified behaviour was unintentional,
it is recommended that the default action should be to grant a
Permanent Interpretation.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Permanent Interpretation (PIN) Review Conclusion
A Permanent Interpretation is granted.
Problem Reporting System Options:
- View Report 0718
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority