Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.59 regression: array.contains() method fails for dependency objects #9047

Closed
Akaricchi opened this issue Jul 30, 2021 · 4 comments
Closed
Milestone

Comments

@Akaricchi
Copy link
Contributor

Describe the bug
The contains() method of arrays always returns false when given a dependency object, even if the array actually contains the object. This results in a nasty miscompilation in Taisei.

To Reproduce

project('mesonfail', 'c')
deps = []
dummy = declare_dependency()
deps += dummy
assert(deps.contains(dummy))

Expected behavior
The assertion in the above code snipped must not fail.

system parameters

  • native build
  • openSUSE tumbleweed
  • Python 3.9.0
  • meson 0.59.0
  • ninja 1.10.2
@Akaricchi
Copy link
Contributor Author

May be a duplicate of #9020

@dcbaker dcbaker added this to the 0.59.1 milestone Jul 30, 2021
@dcbaker
Copy link
Member

dcbaker commented Jul 30, 2021

@mensinda

@mensinda
Copy link
Member

Yes, this is almost certainly a duplicate. Could you please check if #9027 fixes this?

@Akaricchi
Copy link
Contributor Author

Looks like it does.

@xclaesse xclaesse closed this as completed Aug 9, 2021
gicmo added a commit to gicmo/bolt that referenced this issue Aug 16, 2021
meson 0.59.0 breaks "contains" for dependency objects[1], which we
use to conditionally set the umockdev ld preload. So this breaks
the umockdev based tests. Since Fedora 33 and above updated to this
version it breaks bolt[2]. Reverse gating tests would be nice.

[1] mesonbuild/meson#9047
[2] https://bugzilla.redhat.com/show_bug.cgi?id=1994006
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants