flowistry
flowistry copied to clipboard
[PDG] Arguments and returns not correctly connected with external functions in certain cases.
Here is the code I tried
fn main() -> u32 {
id(create())
}
// external
fn create() -> u32;
fn id<T>(t: T) -> T;
I would have expected this to create a PDG return@create -> arg[0]@id -> return@id -> return@main
but instead it creates this
The input of id
is for some reason not connected to anything, but its parent is connected to its return? This is very strange.