Cthulhu.jl icon indicating copy to clipboard operation
Cthulhu.jl copied to clipboard

Different type annotations when function is defined once on Julia nightly

Open Zentrik opened this issue 5 months ago • 2 comments

Note ::Type{Int64} is omitted the first time.

julia> versioninfo()
Julia Version 1.11.0-DEV.1226
Commit 1d3dd859ff8 (2024-01-07 22:06 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 16 × AMD Ryzen 7 1700 Eight-Core Processor
  WORD_SIZE: 64
  LLVM: libLLVM-15.0.7 (ORCJIT, znver1)
Threads: 1 default, 0 interactive, 1 GC (on 16 virtual cores)

julia> f(x) = Int(x)
f (generic function with 1 method)

julia> using Cthulhu

julia> @descend f(1)
f(x) @ Main REPL[2]:1
1 f(x::Int64)::Int64 = Int(x::Int64)
Select a call to descend into or ↩ to ascend. [q]uit. [b]ookmark.
Toggles: [w]arn, [h]ide type-stable statements, [t]ype annotations, [s]yntax highlight for Source/LLVM/Native, [j]ump to source always.
Show: [S]ource code, [A]ST, [T]yped code, [L]LVM IR, [N]ative code
Actions: [E]dit source code, [R]evise and redisplay
 • Int(x::Int64)
   ↩

julia> f(x) = Int(x)
f (generic function with 1 method)

julia> @descend f(1)
f(x) @ Main REPL[5]:1
1 f(x::Int64)::Int64 = Int::Type{Int64}(x::Int64)
Select a call to descend into or ↩ to ascend. [q]uit. [b]ookmark.
Toggles: [w]arn, [h]ide type-stable statements, [t]ype annotations, [s]yntax highlight for Source/LLVM/Native, [j]ump to source always.
Show: [S]ource code, [A]ST, [T]yped code, [L]LVM IR, [N]ative code
Actions: [E]dit source code, [R]evise and redisplay
 • Int::Type{Int64}(x::Int64)
   ↩

Zentrik avatar Jan 08 '24 00:01 Zentrik