Commit 3b67f16
committed
fix error prone failure path in
The earlier path forced a cast to TypeDecl, which will assert if that's not a valid cast, eg. if you have a NamespaceDecl.
```
llvm/include/llvm/Support/Casting.h:578: decltype(auto) llvm::cast(From*) [with To = clang::TypeDecl; From = clang::Decl]: Assertion `isa<To>(Val) && "cast<Ty>() argument of incompatible type!"' failed.
```
Allows for more flexible calls from cppyy, being less crash-prone. The old test has been extended.GetTypeFromScope
1 parent ab4ca85 commit 3b67f16
File tree
2 files changed
+14
-8
lines changed- lib/CppInterOp
- unittests/CppInterOp
2 files changed
+14
-8
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1981 | 1981 | | |
1982 | 1982 | | |
1983 | 1983 | | |
1984 | | - | |
1985 | 1984 | | |
1986 | | - | |
| 1985 | + | |
1987 | 1986 | | |
1988 | 1987 | | |
1989 | | - | |
| 1988 | + | |
| 1989 | + | |
| 1990 | + | |
| 1991 | + | |
1990 | 1992 | | |
1991 | 1993 | | |
1992 | 1994 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
380 | 380 | | |
381 | 381 | | |
382 | 382 | | |
383 | | - | |
| 383 | + | |
384 | 384 | | |
385 | | - | |
| 385 | + | |
| 386 | + | |
386 | 387 | | |
387 | 388 | | |
388 | 389 | | |
| 390 | + | |
389 | 391 | | |
390 | 392 | | |
391 | 393 | | |
| 394 | + | |
392 | 395 | | |
393 | | - | |
394 | | - | |
395 | | - | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
396 | 400 | | |
397 | 401 | | |
398 | 402 | | |
| |||
0 commit comments