You don't mean typeConstructor here, even though it will usually work. An argument to appliedType is ill-kinded unless the corresponding parameter has the same kind arity. In this case that means it will work with monomorphic types and fail otherwise, since you are stripping any type arguments off whatever is T in Throwable[T].
```
// package a { class Bippy[T] extends Throwable }

scala> typeOf[a.Bippy[Int]]
res1: $r.intp.global.Type = a.Bippy[Int]

scala> appliedType(ThrowableClass, res1)
res2: $r.intp.global.Type = Throwable[a.Bippy[Int]]

// here is where you are stripping the [Int] off of Bippy
scala> appliedType(ThrowableClass, res1.typeConstructor)
res3: $r.intp.global.Type = Throwable[a.Bippy]
```