|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0679 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 0679.
Report 0679 Actions
Problem Report Number 0679 Submitter's Classification Specification problem State Resolved Resolution Permanent Interpretation (PIN) Problem Resolution ID PIN.X.0072 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published 1997-07-07 08:00 Product Standard Commands and Utilities V2 (UNIX 95) Certification Program The Open Brand certification program Test Suite VSC version 4.1.4 Test Identification POSIX.upe/ex 231,232,233 Specification Commands and Utilities Issue 4 Version 2 Location in Spec See Problem Text Problem Summary PIN4C.00042 The tests may fail on implementations that make the current line the last line put back. Problem Text
The tests may fail on implementations that adhere to historic practice
and place the current line to the last line put back. Although
POSIX.2 interpretation #78 reaffirms the behavior, the POSIX.2b draft
reinstates the historic behavior.
The tests in question verify the following assertions:
231:
When the unnamed buffer contains lines from a previous delete or yank
command, then [line] put places the lines in the unnamed buffer after
line (default: the current line) and sets the current line indicator to
the first line put back.
232:
When x is a lowercase character in the POSIX locale and the buffer
referenced by x contains lines from a previous put or yank command,
then [line] put places the lines in the buffer referred to by x after
line (default: the current line) and sets the current line indicator to
the first of the inserted lines.
233:
When X is an uppercase character in the POSIX locale for which x is the
lowercase equivalent, and the buffer referenced by x contains lines from
a previous delete or yank command, then [line] put X places the lines in
the buffer referred to by x after line (default: the current line) and
sets the current line indicator to the first line put back.
The portion of all these assertions that is in dispute is the current
line indicator when the put is completed. In all these assertions, the
expected current line is based in part on the following language in
XCU4 Issue 2, p. 310:
Put
Synopsis: [line]pu[y] [buffer]
Put back deleted or yanked lines after line <line>. A buffer can
be specified; otherwise, the text in the unnamed buffer (where
deleted or yanked text is placed by default) will be restored. The
current line number will be set to the first line put back.
This language is taken directly from POSIX.2. However, the last
sentence, describing the setting of the current line, does not describe
the historical behavior of ex.
IEEE interpretation request pasc-1003.2-078 deals with this issue,
although rather obliquely. This interpretation request is too long to
cite here in its entirety, but it says in part:
#11 Command Description
Section 5.10.7.2, page 522, line 1267
Historically, text was stored in buffers even when a buffer
wasn't specified.
Historically, buffers were either character or line mode
oriented. This impacts almost all operations that deal
with them.
The language on which the assertion was based is no longer present in
the most recent draft (Draft 11) of POSIX.2b, which is now written in
terms of line and character mode buffers. It now states in part:
5.10.7.5.22 put
Synopsis: [1addr] pu[t] [buffer]
...
Current line: Set to the last line entered into the edit buffer.
which is historical practice. The test suite itself contains comments
written to the journal to the effect that this appears to be an error
and will change. (See the journal output shown above for all three
assertions.) In view of this, the assertion is clearly a grey area.
Test Output
-----------------start of test output------------------
************************************************************************
/tset/POSIX.upe/ex/ex_05.ex 1 Failed
Test Information:
Assertion #231 (C): [line]put puts lines into file from unnamed buffer
Note: The behavior associated with this assertion is expected
to change in a future revision of POSIX.2.
expected current line 5, was line 6
Command failed: 'checkline ex_data_1 5'
expected current line 4, was line 5
Command failed: 'checkline ex_data_2 4'
************************************************************************
************************************************************************
/tset/POSIX.upe/ex/ex_05.ex 1 Failed
Test Information:
Assertion #232 (C): [line]put<buff> puts lines into file from named
buffer
Note: The behavior associated with this assertion is expected
to change in a future revision of POSIX.2.
expected current line 5, was line 6
Command failed: 'checkline ex_data_1 5'
expected current line 4, was line 5
Command failed: 'checkline ex_data_2 4'
************************************************************************
************************************************************************
/tset/POSIX.upe/ex/ex_05.ex 1 Failed
Test Information:
Assertion #233 (C): [line]put<buff> when buffer is a single uppercase
char
Note: The behavior associated with this assertion is expected
to change in a future revision of POSIX.2.
expected current line 5, was line 6
Command failed: 'checkline ex_data_1 5'
expected current line 4, was line 5
Command failed: 'checkline ex_data_2 4'
************************************************************************
------------------end of test output-------------------
Note: this output was from the vrpt report.
Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
Anticipating acceptance of the completely rewritten ex specification
in POSIX 2003.2b/D11 and the eventual alignment of the tests with it
a temporary interpretation is recommended.
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 0679
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority