- if (dir.length_i () && dir.isnum_b ())
- slurdir = (Direction) sign (int(dir));
- else if (dir2.length_i () && dir2.isnum_b ())
- slurdir = (Direction) sign (int (dir2));
+ if (SCM_NUMBERP(dir))
+ slurdir = to_dir (dir);
+ else if (gh_number_p (dir2))
+ slurdir = to_dir (dir2);