• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

JuliaLang / julia / #37887
77%

Build:
DEFAULT BRANCH: master
Ran 29 Aug 2024 10:40AM UTC
Jobs 1
Files 361
Run time 28min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

29 Aug 2024 06:51AM UTC coverage: 87.875% (+0.02%) from 87.854%
#37887

push

local

web-flow
optimizer: don't insert `:throw_undef_if_not` for defined slots (#55600)

As an application of JuliaLang/julia#55545, this commit avoids the
insertion of `:throw_undef_if_not` nodes when the defined-ness of a slot
is guaranteed by abstract interpretation.

```julia
julia> function isdefined_nothrow(c, x)
           local val
           if c
               val = x
           end
           if @isdefined val
               return val
           end
           return zero(Int)
       end;

julia> @code_typed isdefined_nothrow(true, 42)
```
```diff
diff --git a/old b/new
index c4980a5c9c..3d1d6d30f0 100644
--- a/old
+++ b/new
@@ -4,7 +4,6 @@ CodeInfo(
 3 ┄ %3 = φ (#2 => x, #1 => #undef)::Int64
 │   %4 = φ (#2 => true, #1 => false)::Bool
 └──      goto #5 if not %4
-4 ─      $(Expr(:throw_undef_if_not, :val, :(%4)))::Any
-└──      return %3
+4 ─      return %3
 5 ─      return 0
 ) => Int64
```

3 of 4 new or added lines in 1 file covered. (75.0%)

33 existing lines in 3 files now uncovered.

78250 of 89047 relevant lines covered (87.87%)

16797254.21 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #37887.1 29 Aug 2024 10:40AM UTC 0
87.87
Source Files on build #37887
Detailed source file information is not available for this build.
  • Back to Repo
  • ac0161a6 on github
  • Prev Build on master
  • Next Build on master
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc