|
1 | 1 | # Tips and Tricks |
2 | 2 |
|
3 | | -## Poppler ABI changes ;-( |
| 3 | +This directory contains a collection of tips and tricks |
| 4 | +which can be useful in identifying problems with the |
| 5 | +interaction between the old pdf2htmlEX source code and |
| 6 | +the new poppler version. |
4 | 7 |
|
5 | | -Check all {inc,dec}RefCnt uses... from poppler-0.68.0 the USER is supposed |
6 | | -to incRefCnt as well as decRefCnt. |
| 8 | +This collection is loosely organized around a number |
| 9 | +of **problems** and/or **symptoms** and some |
| 10 | +**suggested solutions...** |
7 | 11 |
|
8 | | -## Finding hidden virtual function prototypes |
9 | | - |
10 | | -### g++ |
11 | | - |
12 | | -make sure the -Woverloaded-virtual warnings are turned ON! |
13 | | - |
14 | | -### clang++ |
15 | | - |
16 | | -make sure the -Woverloaded-virtual warnings are turned ON! |
17 | | - |
18 | | -use clang-tidy: |
19 | | - |
20 | | - clang-tidy -p build -header-filter=.* <<a compilation unit>> |
21 | | - |
22 | | -This will highlight *clang-diagnostic-overloaded-virtual* warnings. |
23 | | - |
24 | | -Consider adding the 'cert-*' checks to check for CERT Secure Coding |
25 | | -Guidelines |
26 | | - |
27 | | -## General tips |
28 | | - |
29 | | -### g++ |
30 | | - |
31 | | -To get the list of g++ warnings: |
32 | | - |
33 | | - g++ --help=warnings |
34 | | - |
35 | | -### clang++ |
36 | | - |
37 | | -To get the list of clang++ warnings, see [Diagnostic flags in |
38 | | -Clang](https://clang.llvm.org/docs/DiagnosticsReference.html). |
39 | | - |
40 | | -Generally all warnings flags which g++ implements will be implemented by |
41 | | -clang++. BUT they might be implemented differently (and hence triggered on |
42 | | -slightly different conditions). |
43 | | - |
44 | | -See: [Clang |
45 | | -tools](https://github.com/llvm-mirror/clang/blob/master/docs/ClangTools.rst) |
46 | | - |
47 | | -See: |
48 | | -[Clang-tidy](https://github.com/llvm/llvm-project/blob/master/clang-tools-extra/docs/clang-tidy/index.rst) |
49 | | - |
50 | | -See: |
51 | | -[Clang-Tidy](https://clang.llvm.org/extra/clang-tidy/) |
52 | | - |
53 | | - |
54 | | -See: |
55 | | -[Clang-check](http://manpages.org/clang-check) |
56 | | - |
57 | | -See: |
58 | | - * [Clang-query] |
59 | | - (https://devblogs.microsoft.com/cppblog/exploring-clang-tooling-part-2-examining-the-clang-ast-with-clang-query/) |
60 | | - * [AST Matcher |
61 | | - Reference](https://clang.llvm.org/docs/LibASTMatchersReference.html) |
62 | | - * [Matching the Clang AST](https://clang.llvm.org/docs/LibASTMatchers.html) |
| 12 | +Alas, as they say... Your mileage may vary.... |
0 commit comments