Issue574546
Created on 2002-06-27.12:18:56 by bbouwens, last changed 2002-07-03.21:37:39 by bckfnn.
History | |||
---|---|---|---|
Date | User | Action | Args |
2002-06-27 12:18:56 | bbouwens | create |
Created on 2002-06-27.12:18:56 by bbouwens, last changed 2002-07-03.21:37:39 by bckfnn.
Messages | |||
---|---|---|---|
msg677 (view) | Author: Bram Bouwens (bbouwens) | Date: 2002-06-27.12:18:56 | |
In my application there is a line like item.attribute += "value" which doesn't work. The attribute is looked up with the __getattr__ method as item is a wrapper around a Java object. So this is effectively equivalent to item.__getattr__("attribute").__iadd__("value") When I replace the above line with item.attribute.__iadd__("value") it works fine. I noticed that the original version causes a call to item.__setattr__(None) (or something else instead of None) which is not to be expected. The problem went away when I commented out line 1293 of org/python/compiler/CodeCompiler.java rev. 2.28. That line must be useless (so by definition incorrect) as the augbinop already does the store itself. |
|||
msg678 (view) | Author: Finn Bock (bckfnn) | Date: 2002-07-03.21:37:39 | |
Logged In: YES user_id=4201 This is not a bug. The result of augmented assignment operator must be rebound back as a attribute or index or name. It is not acceptable to depend solely on the __iadd__ to modify the attribute. |
History | |||
---|---|---|---|
Date | User | Action | Args |
2002-06-27 12:18:56 | bbouwens | create |
Supported by Python Software Foundation,
Powered by Roundup