*Synopsis*: ksh93 may treat unset variables as set

CR 6945600 changed on Apr 26 2010 by <User 1-5Q-8426>

=== Field ============ === New Value ============= === Old Value =============

Public Comments        New Note                                               
Public Comments        New Note                                               
====================== =========================== ===========================

     
*Change Request ID*: 6945600

*Synopsis*: ksh93 may treat unset variables as set

  Product: solaris
  Category: shell
  Subcategory: korn93
  Type: Defect
  Subtype: 
  Status: 1-Dispatched
  Substatus: 
  Priority: 2-High
  Introduced In Release: 
  Introduced In Build: 
  Responsible Engineer: 
  Keywords: opensolaris

=== *Description* ============================================================
Category
    shell
Sub-Category
    korn93
Description
    I've recently changed my primary GCC build machine from Solaris Express 
(running
snv_130) to OpenSolaris (running snv_134).  The gcc toplevel configure failed
to detect ranlib and strip, which works fine with both bash and the old /bin/ksh
(i.e. ksh88).
Frequency
    Always
Regression
    solaris_10
Steps to Reproduce
    Consider the following shellscript:
for progname in list; do
    if test -z "${var}"; then
        if test "${var+set}" = set; then
            echo set
        else
            echo unset
        fi
    fi
done
Expected Result
    When run with /bin/bash or /bin/ksh on Solaris 10 or Solaris Express, I get 
the
expected
/bin/ksh set.sh
unset
Actual Result
    With /bin/sh, /bin/ksh being ksh93, I get instead
/bin/ksh93 set.sh
set
The result is extremely sensitive to the input script: if you remote the 
unrelated
outer for loop, both shells behave the same.
Error Message(s)
    
Test Case
    
Workaround
    
Additional configuration information

*** (#1 of 1): 2010-04-20 19:45:02 GMT+00:00 <User 1-9HOB9N>


=== *Public Comments* ========================================================
>From the ksh93 team:

We need the output of ksh93 --version

*** (#1 of 2): 2010-04-26 10:16:13 GMT+00:00 <User 1-5Q-8426>

Again from the ksh93 team:

I can reproduce the problem with ast-ksh.2009-12-11 but it disappeared in 
ast-ksh.2009-12-18
~/ksh93/ast_ksh_20091211/build_sparc_64bit/arch/sol11.sun4/bin/ksh x.sh
set
~/ksh93/ast_ksh_20091218/build_sparc_64bit/arch/sol11.sun4/bin/ksh x.sh
unset
We have to check which version and architecture the bug reporter is using.

*** (#2 of 2): 2010-04-26 10:18:01 GMT+00:00 <User 1-5Q-8426>


=== *Workaround* =============================================================

=== *Additional Details* =====================================================
        Targeted Release: 
        Commit To Fix In Build: 
        Fixed In Build: 
        Integrated In Build: 
        Verified In Build: 
  See Also: 
  Duplicate of: 
  Hooks:
        Hook1: 
        Hook2: 
        Hook3: 
        Hook4: 
        Hook5: 
        Hook6: <email address omitted>
  Program Management: 
  Root Cause: 
  Fix Affects Documentation: No
  Fix Affects Localization: No

=== *History* ================================================================
        Date Submitted: 2010-04-20 19:45:01 GMT+00:00
        Submitted By: <User 1-9HOB9N>

        Status Changed    Date Updated                  Updated By


=== *Service Request* ========================================================
        Impact: Critical
        Functionality: Primary
        Severity: 1
        Product Name: solaris
        Product Release: solaris_nevada
        Product Build: snv_134
        Operating System: solaris_nevada
        Hardware: generic
        Submitted Date: 2010-04-20 19:45:02 GMT+00:00


=== *Multiple Release (MR) Cluster* - 0 ======================================

_______________________________________________
ksh93-integration-discuss mailing list
ksh93-integration-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/ksh93-integration-discuss

Reply via email to