|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2370 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 2370.
Report 2370 Actions
Problem Report Number 2370 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.1224 Raised 2004-05-06 08:22 Updated 2004-05-07 22:11 Published 2004-05-07 22:11 Product Standard Commands and Utilities V2 (UNIX 95) Certification Program The Open Brand certification program Test Suite VSC version 5.2.5 Test Identification POSIX.annexA lex 98 Specification Commands and Utilities Issue 4 Location in Spec IEEE Std 1003.2-1992 Section A.2.6-7 Problem Summary This test may fail on implementations that require additional
data or behavior in lex.yy.c to be provided by lex.Problem Text Tp 98 uses this file as a test of the lex library:
#include <stdio.h>
int
yylex()
{
printf("Hi there\n");
return(0);
}
The test may fail on implementations that expects additional behavior
from lex to be included in the intermediate file linked to the lex
library. The form and content of the intermediate file produced by lex
and linked with the lex library is unspecified by the standard.
Lines 308-309 of the standard specify that the lex.yy.c file, referred
to above, will be created by lex after processing a valid lex input
file:
308 A text file containing C source code shall be written to
lex.yy.c, or to the stan-
309 dard output if the -t option is present.
The standard in lines 313-315 specify that the lex library is linked
with a file named lex.yy.c:
313 When lex.yy.c is compiled and linked with the lex library (using
the -l l
314 operand with c89), the resulting program reads character input
from standard
315 input and partitions it into strings that match the given
expressions.
The standard does not specify whether the lex library can be used with
C programs that are not generated by lex.
Lines 551-558 specify that the function yylex() is to be generated by
the lex utility, and that it can be found either in the C code
generated by lex (such as in lex.yy.c), or in the lex library:
551 The functions or macros described below are accessible to user
code included in
552 the lex input. It is unspecified whether they appear in the C
code output of lex
553 or are accessible only through the -l l operand to c89 (the lex
library).
In the absence of a specification of the intermediate file by the
standard, it should be allowed for conforming implementations to be
dependent on unspecified behavior that are produced by lex. Since the
test input program to the library was not produced by lex the test may
not compile or link causing an incorrect test failure.Test Output # ***********************************************************************
/tset/POSIX.annexA/lex/lex.ex 98 Failed
Test Information:
Assertion #98 (C): Test behavior of lex library supplied main() routine
Standard output isn't the same as file 'lex_eso_98_1'
diff of "out.stdout" and "lex_eso_98_1":
# out.stdout Wed Mar 31 06:26:00 2004
--- lex_eso_98_1 Wed Mar 31 06:25:59 2004
***************
--- 1 ----
+ Hi there
***********************************************************************Review Information
Review Type TSMA Review Start Date 2004-05-06 08:22 Last Updated 2004-05-06 17:50 Completed 2004-05-06 17:50 Status Complete Review Recommendation Test Suite Deficiency (TSD) Review Response This is accepted as a fault in the test suite.
Review Type SA Review Start Date 2004-05-06 16:50 Last Updated 2004-05-07 00:03 Completed 2004-05-07 00:03 Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion This PR represents an agreed test suite deficiency
Problem Reporting System Options:
- View Report 2370
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority