##// END OF EJS Templates
match: strengthen visit_children_set invariant, Recursive means "all files"...
match: strengthen visit_children_set invariant, Recursive means "all files" My previous interpretation of "Recursive" was too relaxed: I thought it instructed the caller to do something like this: > you can stop calling `visit_children_set` because you'll need to descend into > every directory recursively, but you should still check every file if it > matches or not Whereas the real instruction seems to be: > I guarantee that everything in this subtree matches, you can stop > querying the matcher for all files and dirs altogether. The evidence to support this: - the test actually passes with the stronger invariant, revealing no exceptions from this rule - the implementation of `visit_children_set` for `DifferenceMatcher` clearly relies on this requirement, so it must hold for that not to lead to bugs.

File last commit:

r45128:af739894 default
r52464:74230abb stable
Show More
config
13 lines | 671 B | text/plain | TextLexer
# By default Rust will not export dynamic symbols from built executables.
# Python symbols need to be exported from executables in order for that
# executable to load Python extension modules, which are shared libraries.
# Otherwise, the extension module / shared library is unable to resolve
# Python symbols. This file contains target-specific configuration
# overrides to export dynamic symbols from executables.
#
# Ideally we would achieve this functionality via the build.rs build
# script. But custom compiler flags via build scripts apparently only
# support limited options.
[target.x86_64-unknown-linux-gnu]
rustflags = ["-C", "link-args=-Wl,-export-dynamic"]