-
-
Notifications
You must be signed in to change notification settings - Fork 284
Open
Description
From this build, I see these errors building against Postgres 18 on Debian:
error[E0308]: mismatched types
Error: --> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:273:22
|
273 | .replace(pgrx_executor_start)
| ------- ^^^^^^^^^^^^^^^^^^^ expected fn pointer, found fn item
| |
| arguments to this method are incorrect
|
= note: expected fn pointer `unsafe extern "C-unwind" fn(_, _) -> ()`
found fn item `unsafe extern "C-unwind" fn(_, _) -> bool {pgrx_executor_start}`
help: the return type of this call is `unsafe extern "C-unwind" fn(*mut pgrx_pg_sys::QueryDesc, i32) -> bool {pgrx_executor_start}` due to the type of the argument passed
--> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:272:35
|
272 | prev_executor_start_hook: pg_sys::ExecutorStart_hook
| ___________________________________^
273 | | .replace(pgrx_executor_start)
| |______________________-------------------^
| |
| this argument influences the return type of `replace`
note: method defined here
--> /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/option.rs:1809:18
error[E0308]: mismatched types
Error: --> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:274:22
|
274 | .or(Some(pgrx_standard_executor_start_wrapper)),
| ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected fn pointer, found fn item
| |
| arguments to this enum variant are incorrect
|
= note: expected fn pointer `unsafe extern "C-unwind" fn(_, _) -> ()`
found fn item `unsafe extern "C-unwind" fn(_, _) -> bool {pgrx_standard_executor_start_wrapper}`
help: the type constructed contains `unsafe extern "C-unwind" fn(*mut pgrx_pg_sys::QueryDesc, i32) -> bool {pgrx_standard_executor_start_wrapper}` due to the type of the argument passed
--> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:274:17
|
274 | .or(Some(pgrx_standard_executor_start_wrapper)),
| ^^^^^------------------------------------^
| |
| this argument influences the type of `Some`
note: tuple variant defined here
--> /rustc/6b00bc3880198600130e1cf62b8f8a93494488cc/library/core/src/option.rs:597:5
error[E0308]: mismatched types
Error: --> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:345:25
|
345 | HookResult::new(res)
| --------------- ^^^ expected `bool`, found `()`
| |
| arguments to this function are incorrect
|
note: associated function defined here
--> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:43:12
|
43 | pub fn new(value: T) -> Self {
| ^^^ --------
error[E0308]: mismatched types
Error: --> /usr/share/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pgrx-0.15.0/src/hooks.rs:734:5
|
733 | ) -> bool {
| ---- expected `bool` because of return type
734 | pg_sys::standard_ExecutorStart(query_desc, eflags)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `bool`, found `()`
For more information about this error, try `rustc --explain E0308`.
error: could not compile `pgrx` (lib) due to 4 previous errors
Error: Process completed with exit code 1.
The error does not occur on Postgres 13-17.
Metadata
Metadata
Assignees
Labels
No labels