Menu

#2935 bogus complaint regarding resolved '!false' usage in "if"

final: 8.3.5
closed-out-of-date
5
2004-10-28
2004-10-27
Anonymous
No

tcl 8.3.5
redhat enterprise 3.0

example:

set found false

if {!$found} {
puts "eval'd true"
}

Expecting "puts" to occur, but get following error:

can't use non-numeric string as operand of "!"

This example works fine on same platform, backed down
to TCL 8.3.3.

Discussion

  • Don Porter

    Don Porter - 2004-10-28

    Logged In: YES
    user_id=80530

    Works for me in the current
    release, Tcl 8.4.7.

    % info patch
    8.4.7
    % set found false
    false
    % if {!$found} {puts true}
    true

    For that matter, Works For Me
    using Tcl 8.3.5 also:

    % info patch
    8.3.5
    % set found false
    false
    % if {!$found} {puts true}
    true

    If you see the error only in a
    modified Tcl distributed by RedHat,
    you'll have to take that up with them.
    The original sources work, and the
    current release works.

    If you're seeing this error only
    in a Tcl interpreter you compiled
    from source code yourself, it's
    possible that you're seeing the
    effects of a compiler bug. If you're
    in that category, follow up and
    tell us what compiler you used.
    Otherwise, this report will close.

     
  • Don Porter

    Don Porter - 2004-10-28
    • assigned_to: dkf --> dgp
    • status: open --> closed-out-of-date