Enter new bug
||Opened: 2000-12-18 15:06|
This file will serve to describe the fundamental UIL problem that I am
This was compiled on ...
SunOS haroldII 5.7 Generic sun4u sparc SUNW,Ultra-2
Using Motif2.1 (determined from the Xm.h).
The problem occurs on all platforms. Including RedHat Linux
using the new Motif 2.1.30.
I have defined a simple widget tree using three uil files
main_form.uil which defines the main screen
and forma.uil and formb.uil that define sub
Here is the Motif Widget Tree as defined by UIL, I use
indention to indicate sub widgets. Here MAIN_FORM is the
root of the tree and FORMA and FORMB are two separate and
distinct forms that are children of MAIN_FORM_FORM, but
FORMB is not managed. Please note the "PROBLEM_FRAME",
and specifically the names of the buttons in "PROBLEM_FRAME_bb".
In forma the buttons are "FORMA_BUTTON_" in formb
they are "FORMB_BUTTON_".
Now my testbed program reads in the heirarchy and then prints
the widget tree out (I wrote a routine wal_create_tree, that
recursively descends the tree and prints it out in the following
Motif Widget Tree
MAIN_FORM 3e7b0 PARENT MAIN_FORM_popup
MAIN_FORM_FORM 3f930 PARENT MAIN_FORM
FORMA 3fb88 PARENT MAIN_FORM_FORM
FORMA_OUTER 46418 PARENT FORMA
FORM_OUTER_bb 46660 PARENT FORMA_OUTER
PROBLEM_FRAME 468d0 PARENT FORM_OUTER_bb
PROBLEM_FRAME_bb 46b58 PARENT PROBLEM_FRAME
FORMA_BUTTON_1 47628 PARENT PROBLEM_FRAME_bb
FORMA_BUTTON_2 49478 PARENT PROBLEM_FRAME_bb
FORMA_BUTTON_3 49650 PARENT PROBLEM_FRAME_bb
PROBLEM_FRAME_l 49828 PARENT PROBLEM_FRAME
FORM_OUTER_l 49948 PARENT FORMA_OUTER
FORMB 49a68 PARENT MAIN_FORM_FORM
FORMB_OUTER 49c60 PARENT FORMB
FORM_OUTER_bb 49e08 PARENT FORMB_OUTER
PROBLEM_FRAME 49f78 PARENT FORM_OUTER_bb
PROBLEM_FRAME_bb 4a120 PARENT PROBLEM_FRAME
FORMA_BUTTON_1 4a2c0 PARENT PROBLEM_FRAME_bb
FORMA_BUTTON_2 4a550 PARENT PROBLEM_FRAME_bb
FORMA_BUTTON_3 4a728 PARENT PROBLEM_FRAME_bb
PROBLEM_FRAME_l 4a900 PARENT PROBLEM_FRAME
FORM_OUTER_l 46cc8 PARENT FORMB_OUTER
TAB_BUTTON 4ae48 PARENT MAIN_FORM
Pay specific attention to the names of the buttons in FORMB as
you can see they are named the same as in FORMA, even though
the UIL file formb.uil specifically names them differently.
I have noticed other problems as well, not listed here I suspect
that they are related to this problem though.
If I have not presented this problem clearly, or if I can be of
further service please contact me.
System Development Inc.
713 266 5667
------- Additional Comments From Julian Brown 2000-12-18 15:08 -------
Created an attachment (id=1)
Small sample that illustrates problem
------- Additional Comments From Jim Burmeister 2000-12-18 15:35 -------
Here at Metro Link, one of our customers reported this same thing. Turns
out it's not actually a bug in Motif 2.1, but rather an undocumented change
in behavior between Motif 1.2 and Motif 2.x.
In Motif 2.0, TOG changed the behavior of the UIL compiler such that
objects are now created "exported" by default, rather than "private".
If you have two UIL modules that have exported symbols with the same name,
the symbols will interfere with each other. The solution is to either
change the names of your objects, or add the keyword "private" to each
object that might have a name conflict.
Unfortunately, nowhere in the release notes does it say that this behavior
changed. The only way I knew that it was a deliberate change instead of a bug
is a comment in the file tools/wml/Uil.y in Motif 2.0 saying "Make objects
exported by default." Since it has been this way since Motif 2.0, it's
too late to change the behavior back (although a command-line option to
the uil compiler that restored the old behavior would be nice).
Enter new bug
This is Mr. Samsa: the Open Motif bug system using Bugzilla. For more
information about what Bugzilla is and what it can do, see