﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	difficulty
1762	Maybe/Just Int checker in Silex compilation	Idiomdrottning		"When chicken-install silex I get this

Warning: Invalid argument
  In file `silex.scm:472',
  In module `silex',
  In procedure `digraph',
  In procedure `store-final338',
  In procedure `loop',
  In procedure call:

    (scheme#vector-set! prio voisin infinity)

  Argument #2 to procedure `vector-set!' has an invalid type:

    false

  The expected type is:

    fixnum

  This is the expression:

    voisin

  Procedure `vector-set!' from module `scheme' has this type:

    (vector fixnum * -> undefined)

In the code, the index value ""voisin"" is derived from a vector-ref call on another vector that's initialized with #f's but populated by fixnums (hopefully? I didn't fully analyze the code here…) before being referenced.

So probably one of two things are going on:

The silex code is bugged and the variable won't be a fixnum in time (in which case this is is a serious bug in silex), or (what I believe is more likely)

The type-checking code is mislabeling the situation here. It doesn't know that it'll be an int in time. This is just an, uh, ""cosmetic"" bug in core, which is how I'm labeling it. Or I'm wrong and it's instead a serious bug in exts (silex)."	enhancement	reopened	not urgent at all	someday	scrutinizer	5.2.0				
