Message352691
> if using a static inline function is causing issues
Separately from whether there was or wasn't such an issue here, I think it's interesting to note that the build failure bpo-38205 is an example of exactly the opposite! It was caused by a combination of
(a) using a macro *instead* of a plain old C function;
(b) using avoidable preprocessor conditionals.
And both of them led to that build failure in classic ways.
Specifically, the build failure happened because
(a) this `Py_UNREACHABLE` call was in an unusual syntactic context, squished into an expression, in order to use it in a macro.
(b) the call was behind an `#ifdef`/`#else`; and the configuration that included it wasn't one that got test-built by the authors of 3ab61473b (which modified `Py_UNREACHABLE`), nor by CI.
When conditional preprocessing is kept to a minimum -- here, if the `#if NSMALLNEGINTS + NSMALLPOSINTS > 0` conditional enclosed just the `small_ints` array that it needs to -- then this kind of build regression on non-default configurations can't so easily happen. |
|
Date |
User |
Action |
Args |
2019-09-18 05:06:47 | Greg Price | set | recipients:
+ Greg Price, rhettinger, mark.dickinson, vstinner, malin, sir-sigurd, aeros |
2019-09-18 05:06:47 | Greg Price | set | messageid: <1568783207.47.0.333783110264.issue37812@roundup.psfhosted.org> |
2019-09-18 05:06:47 | Greg Price | link | issue37812 messages |
2019-09-18 05:06:47 | Greg Price | create | |
|