# Sema: fix \`is_non_null_ptr\` handling for runtime-known pointers · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/8bcb578507908e17e2081bb03f8c51eb508d51db)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: 8bcb578507908e17e2081bb03f8c51eb508d51db

Requested commit: 8bcb578507908e17e2081bb03f8c51eb508d51db

Commit: 8bcb578507908e17e2081bb03f8c51eb508d51db

Tree: 1e9caba23ae65432f8aa5abaa55f070e2b5220eb

Author: mlugg

Committer: Matthew Lugg

## Message

```
Sema: fix `is_non_null_ptr` handling for runtime-known pointers

We can still often determine a comptime result based on the type, even
if the pointer is runtime-known.

Also, we previously used load -> is non null instead of AIR
`is_non_null_ptr` if the pointer is comptime-known, but that's a bad
heuristic. Instead, we should check for the pointer to be
comptime-known, *and* for the load to be comptime-known, and only in
that case should we call `Sema.analyzeIsNonNull`.

Resolves: #22556

```

## Parents

- [b9198b708f8accb41fdb3f11bf635d63fbff461d](https://git.cafe/gitcafe/zig/commit/b9198b708f8accb41fdb3f11bf635d63fbff461d?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/8bcb578507908e17e2081bb03f8c51eb508d51db?format=markdown)
