leak-marker's People
leak-marker's Issues
Fix `stddef.h` and related include errors in runtime
Right now when started not from system path like /bin
or /usr/bin
, the tool argues that it cannot locate include files stddef.h
, stdint.h
etc. when parsing system headers like <iostream>
. This of course causes mayhem and incorrect behavior.
The issue is related to clang builtin includes. To quote:
the default location to look for builtin headers is in a path
$(dirname /path/to/tool)/../lib/clang/3.3/include
relative to the tool binary. This works out-of-the-box for tools running from llvm’s toplevel binary directory after building clang-headers, or if the tool is running from the binary directory of a clang install next to the clang binary.
Another clue from pro.cxx
Berkus Decker, [15.03.18 11:09]
it is not /usr/bin, it is clang-install-dir wherever you've installed it, it is considered as root, since that's the way relocatable toolchain is done in LLVM
Sample memory-print script basing on leak-provider
Specify path to system libraries for cross-compile
- Search for
<string>
in/arm/target/usr/include
instead of/usr/include
- Prevent clang builtin
limits.h
#include_next
ing/usr/include/limits.h
Arch PKGBUILD support
CommandOptions flags
- run on everything from compile database
- apply changes automatically (+
--no-confirmation
); any parse errors at any stage should prevent changes being applied - display results (for tests)
tests
Travis CI
cmake install support
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.