Skip to content

BLD: Prevent -flto from optimising long double representation check away #14827

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

Merged
merged 2 commits into from
Nov 5, 2019

Conversation

chrisburr
Copy link
Contributor

This was required for Python 3.8 builds for macOS on conda-forge: conda-forge/numpy-feedstock#175

If I understand correctly, -flto with clang 9 was optimisng the test struct in the long_double_representation detection away causing the binary parsing to fail. This patch was enough to prevent this.

A failing log can be found here. I think Azure will clean it at some point so I'll copy the interesting part:

    C compiler: x86_64-apple-darwin13.4.0-clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -DNDEBUG -fwrapv -O3 -Wall -Wstrict-prototypes -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O3 -pipe -fdebug-prefix-map=${SRC_DIR}=/usr/local/src/conda/${PKG_NAME}-${PKG_VERSION} -fdebug-prefix-map=/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho=/usr/local/src/conda-prefix -flto -Wl,-export_dynamic -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O3 -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -isystem /usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include -fdebug-prefix-map=/usr/local/miniconda/conda-bld/numpy_1572718964847/work=/usr/local/src/conda/numpy-1.17.3 -fdebug-prefix-map=/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho=/usr/local/src/conda-prefix -D_FORTIFY_SOURCE=2 -mmacosx-version-min=10.9 -isystem /usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include

    compile options: '-Inumpy/core/src/common -Inumpy/core/src -Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray -Inumpy/core/src/umath -Inumpy/core/src/npysort -I/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include/python3.8 -c'
    x86_64-apple-darwin13.4.0-clang: _configtest.c
    clang-9: warning: -Wl,-export_dynamic: 'linker' input unused [-Wunused-command-line-argument]
    C compiler: x86_64-apple-darwin13.4.0-clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -DNDEBUG -fwrapv -O3 -Wall -Wstrict-prototypes -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O3 -pipe -fdebug-prefix-map=${SRC_DIR}=/usr/local/src/conda/${PKG_NAME}-${PKG_VERSION} -fdebug-prefix-map=/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho=/usr/local/src/conda-prefix -flto -Wl,-export_dynamic -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O3 -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -isystem /usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include -fdebug-prefix-map=/usr/local/miniconda/conda-bld/numpy_1572718964847/work=/usr/local/src/conda/numpy-1.17.3 -fdebug-prefix-map=/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho=/usr/local/src/conda-prefix -D_FORTIFY_SOURCE=2 -mmacosx-version-min=10.9 -isystem /usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include

    compile options: '-Inumpy/core/src/common -Inumpy/core/src -Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray -Inumpy/core/src/umath -Inumpy/core/src/npysort -I/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include/python3.8 -c'
    x86_64-apple-darwin13.4.0-clang: _configtest.c
    clang-9: warning: -Wl,-export_dynamic: 'linker' input unused [-Wunused-command-line-argument]
    x86_64-apple-darwin13.4.0-clang -arch x86_64 _configtest.o -o _configtest
    removing: _configtest.c _configtest.o _configtest.o.d _configtest.c _configtest.o _configtest.o.d _configtest
    Traceback (most recent call last):
      File "numpy/core/setup_common.py", line 263, in check_long_double_representation
        ltype = long_double_representation(pyod(obj))
      File "numpy/core/setup_common.py", line 417, in long_double_representation
        raise ValueError("Could not lock sequences (%s)" % saw)
    ValueError: Could not lock sequences (None)

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/tmp/pip-req-build-5n827j7u/setup.py", line 443, in <module>
        setup_package()
      File "/private/tmp/pip-req-build-5n827j7u/setup.py", line 435, in setup_package
        setup(**metadata)
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/core.py", line 171, in setup
        return old_setup(**new_attr)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/site-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/install.py", line 62, in run
        r = self.setuptools_run()
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/install.py", line 36, in setuptools_run
        return distutils_install.run(self)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/command/install.py", line 545, in run
        self.run_command('build')
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/build.py", line 47, in run
        old_build.run(self)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/command/build.py", line 135, in run
        self.run_command(cmd_name)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/local/miniconda/conda-bld/numpy_1572718964847/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/build_src.py", line 142, in run
        self.build_sources()
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/build_src.py", line 159, in build_sources
        self.build_extension_sources(ext)
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/build_src.py", line 316, in build_extension_sources
        sources = self.generate_sources(sources, ext)
      File "/private/tmp/pip-req-build-5n827j7u/numpy/distutils/command/build_src.py", line 369, in generate_sources
        source = func(extension, build_dir)
      File "numpy/core/setup.py", line 463, in generate_config_h
        rep = check_long_double_representation(config_cmd)
      File "numpy/core/setup_common.py", line 273, in check_long_double_representation
        ltype = long_double_representation(pyod("_configtest"))
      File "numpy/core/setup_common.py", line 417, in long_double_representation
        raise ValueError("Could not lock sequences (%s)" % saw)
    ValueError: Could not lock sequences (None)
    Running setup.py install for numpy: finished with status 'error'
Cleaning up...
  Removing source in /private/tmp/pip-req-build-5n827j7u

The compiled binary was:

Click me to expand
0000000 317 372 355 376 007 000 000 001 003 000 000 200 002 000 000 000
0000020 016 000 000 000 330 002 000 000 205 000 040 000 000 000 000 000
0000040 031 000 000 000 110 000 000 000 137 137 120 101 107 105 132 105
0000060 122 117 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0000100 000 000 000 000 001 000 000 000 000 000 000 000 000 000 000 000
0000120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0000140 000 000 000 000 000 000 000 000 031 000 000 000 350 000 000 000
0000160 137 137 124 105 130 124 000 000 000 000 000 000 000 000 000 000
0000200 000 000 000 000 001 000 000 000 000 020 000 000 000 000 000 000
0000220 000 000 000 000 000 000 000 000 000 020 000 000 000 000 000 000
0000240 007 000 000 000 005 000 000 000 002 000 000 000 000 000 000 000
0000260 137 137 164 145 170 164 000 000 000 000 000 000 000 000 000 000
0000300 137 137 124 105 130 124 000 000 000 000 000 000 000 000 000 000
0000320 260 017 000 000 001 000 000 000 010 000 000 000 000 000 000 000
0000340 260 017 000 000 004 000 000 000 000 000 000 000 000 000 000 000
0000360 000 004 000 200 000 000 000 000 000 000 000 000 000 000 000 000
0000400 137 137 165 156 167 151 156 144 137 151 156 146 157 000 000 000
0000420 137 137 124 105 130 124 000 000 000 000 000 000 000 000 000 000
0000440 270 017 000 000 001 000 000 000 110 000 000 000 000 000 000 000
0000460 270 017 000 000 002 000 000 000 000 000 000 000 000 000 000 000
0000500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0000520 031 000 000 000 110 000 000 000 137 137 114 111 116 113 105 104
0000540 111 124 000 000 000 000 000 000 000 020 000 000 001 000 000 000
0000560 000 020 000 000 000 000 000 000 000 020 000 000 000 000 000 000
0000600 230 000 000 000 000 000 000 000 007 000 000 000 001 000 000 000
0000620 000 000 000 000 000 000 000 000 042 000 000 200 060 000 000 000
0000640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0000660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0000700 000 020 000 000 060 000 000 000 002 000 000 000 030 000 000 000
0000720 070 020 000 000 003 000 000 000 150 020 000 000 060 000 000 000
0000740 013 000 000 000 120 000 000 000 000 000 000 000 000 000 000 000
0000760 000 000 000 000 002 000 000 000 002 000 000 000 001 000 000 000
0001000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001060 016 000 000 000 040 000 000 000 014 000 000 000 057 165 163 162
0001100 057 154 151 142 057 144 171 154 144 000 000 000 000 000 000 000
0001120 033 000 000 000 030 000 000 000 040 207 262 061 141 046 067 113
0001140 230 160 216 253 001 063 157 141 044 000 000 000 020 000 000 000
0001160 000 011 012 000 000 011 012 000 052 000 000 000 020 000 000 000
0001200 000 000 000 000 000 000 000 000 050 000 000 200 030 000 000 000
0001220 260 017 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001240 014 000 000 000 070 000 000 000 030 000 000 000 002 000 000 000
0001260 001 001 255 004 000 000 001 000 057 165 163 162 057 154 151 142
0001300 057 154 151 142 123 171 163 164 145 155 056 102 056 144 171 154
0001320 151 142 000 000 000 000 000 000 046 000 000 000 020 000 000 000
0001340 060 020 000 000 010 000 000 000 051 000 000 000 020 000 000 000
0001360 070 020 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001720 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001740 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0001760 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002060 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002140 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002160 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002200 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002220 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002240 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002260 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002300 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002320 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002340 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002360 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002720 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002740 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0002760 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003060 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003140 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003160 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003200 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003220 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003240 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003260 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003300 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003320 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003340 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003360 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003720 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003740 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0003760 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004060 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004140 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004160 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004200 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004220 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004240 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004260 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004300 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004320 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004340 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004360 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004720 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004740 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0004760 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005060 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005140 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005160 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005200 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005220 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005240 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005260 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005300 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005320 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005340 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005360 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005720 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005740 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0005760 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006060 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006140 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006160 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006200 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006220 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006240 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006260 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006300 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006320 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006340 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006360 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006660 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006720 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006740 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0006760 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007020 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007040 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007060 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007100 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007120 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007140 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007160 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007200 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007220 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007240 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007260 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007300 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007320 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007340 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007360 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007400 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007420 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007440 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007460 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007500 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007520 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007540 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007560 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007600 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007620 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007640 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000
0007660 125 110 211 345 061 300 135 303 001 000 000 000 034 000 000 000
0007700 000 000 000 000 034 000 000 000 000 000 000 000 034 000 000 000
0007720 002 000 000 000 260 017 000 000 064 000 000 000 064 000 000 000
0007740 271 017 000 000 000 000 000 000 064 000 000 000 003 000 000 000
0007760 014 000 001 000 020 000 001 000 000 000 000 000 000 000 000 001
0010000 000 001 137 000 005 000 002 137 155 150 137 145 170 145 143 165
0010020 164 145 137 150 145 141 144 145 162 000 041 155 141 151 156 000
0010040 045 002 000 000 000 003 000 260 037 000 000 000 000 000 000 000
0010060 260 037 000 000 000 000 000 000 002 000 000 000 017 001 020 000
0010100 000 000 000 000 001 000 000 000 026 000 000 000 017 001 000 000
0010120 260 017 000 000 001 000 000 000 034 000 000 000 001 000 000 001
0010140 000 000 000 000 000 000 000 000 040 000 137 137 155 150 137 145
0010160 170 145 143 165 164 145 137 150 145 141 144 145 162 000 137 155
0010200 141 151 156 000 144 171 154 144 137 163 164 165 142 137 142 151
0010220 156 144 145 162 000 000 000 000

@chrisburr
Copy link
Contributor Author

I don't think the failure is related to this change?

@charris
Copy link
Member

charris commented Nov 4, 2019

The failing test does look unrelated, the 10 warnings are:


      warning: no files found matching 'Doc/*'
      warning: no files found matching '*.pyx' under directory 'Cython/Debugger/Tests'
      warning: no files found matching '*.pxd' under directory 'Cython/Debugger/Tests'
      warning: no files found matching '*.pxd' under directory 'Cython/Utility'
      warning: no files found matching 'pyximport/README'
    warning: no files found matching 'Doc/*'
    warning: no files found matching '*.pyx' under directory 'Cython/Debugger/Tests'
    warning: no files found matching '*.pxd' under directory 'Cython/Debugger/Tests'
    warning: no files found matching '*.pxd' under directory 'Cython/Utility'
    warning: no files found matching 'pyximport/README'

EDIT: Seems to come during the Cython installation. We should not be counting those warnings.

@charris
Copy link
Member

charris commented Nov 4, 2019

See #14197 (comment) about the warnings.

@charris
Copy link
Member

charris commented Nov 4, 2019

LGTM, but needs a comment explaining the odd construction.

@charris
Copy link
Member

charris commented Nov 4, 2019

Maybe add a commented zero member to the struct with value zero? That makes it clearer that the zero return is definite.

@mattip
Copy link
Member

mattip commented Nov 4, 2019

@charris gh-14826 will quiet the warnings, is waiting for review/approval

@charris charris added this to the 1.17.4 release. milestone Nov 5, 2019
@charris charris merged commit 1f8fb2c into numpy:master Nov 5, 2019
@charris
Copy link
Member

charris commented Nov 5, 2019

Thanks @chrisburr . I assume you want this backported to 1.17.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants