vedantk
September 22, 2017, 6:22pm
1
As of r313998, this workflow no longer works:
cd
./bin/llvm-lit /llvm/tools/clang/test/CoverageMapping
I get:
llvm-lit: /Users/vk/src/llvm.org -coverage-braces/llvm/tools/clang/test/lit.cfg.py:97: note: using clang: ‘/Volumes/Builds/llvm.org -coverage-braces-RA/bin/clang’
llvm-lit: /Users/vk/src/llvm.org -coverage-braces/llvm/utils/lit/lit/TestingConfig.py:101: fatal: unable to parse config file ‘/Users/vk/src/llvm.org -coverage-braces/llvm/tools/clang/test/lit.cfg.py’, traceback: Traceback (most recent call last):
File “/Users/vk/src/llvm.org -coverage-braces/llvm/utils/lit/lit/TestingConfig.py”, line 88, in load_from_path
exec(compile(data, path, ‘exec’), cfg_globals, None)
File “/Users/vk/src/llvm.org -coverage-braces/llvm/tools/clang/test/lit.cfg.py”, line 128, in
config.substitutions.append( (‘%clang_func_map’, ’ ’ + lit.util.which(‘clang-func-mapping’, config.environment[‘PATH’]) + ’ ') )
TypeError: cannot concatenate ‘str’ and ‘NoneType’ objects
However, this still works when running tests within llvm:
./bin/llvm-lit /llvm/test/tools/llvm-cov
I’d appreciate any help in getting this working again.
thanks,
vedant
Looking, thanks for the report.
This works for me. Can you run “which clang-func-mapping” and also add a line to clang/test/lit.cfg.py to print the value of config.environment[‘PATH’]?
vedantk
September 22, 2017, 6:36pm
4
Ah, the problem goes away once I build clang-func-mapping.
I stripped some stuff out, but here’s pretty much what clang/test/lit.cfg.py says my PATH is:
** PATH **: /Volumes/Builds/llvm.org -coverage-braces-RA/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
I wonder how this ever worked before, when I didn’t have clang-func-mapping built.
Anyway, thanks for your help!
vedant
vedantk
September 22, 2017, 6:38pm
5
Ah, the problem goes away once I build clang-func-mapping.
I stripped some stuff out, but here's pretty much what clang/test/lit.cfg.py says my PATH is:
** PATH **: /Volumes/Builds/llvm.org-coverage-braces-RA/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
I wonder how this ever worked before, when I didn't have clang-func-mapping built.
Oh, this might be an issue with r313975, which I picked up when rebasing things this morning.
vedant
Yea at first I was worried that maybe I changed the semantics of how it looked in PATH, and you had clang-func-mapping in your PATH somewhere before but now lit was building a different PATH. But I looked at that change and it wasn’t even creating that substitution before. So it looks like that CL is indeed the problem.