writeTargetAssemblyToFile :: (MonadBaseControl IO m, IsBackendVoid b ~ False)
                             => IO.FilePath -> ModuleBuilder -> L b m ()
writeTargetAssemblyToFile path builder =
  do tm <- getTargetMachine
     withModule builder $
       liftBase . errorToIO 'LL.writeTargetAssemblyToFile .
       LL.writeTargetAssemblyToFile tm (LL.File path)
writeTargetAssemblyToFile :: (MonadBaseControl IO m, IsBackendVoid b ~ False)
                             => IO.FilePath -> ModuleBuilder -> L b m ()
writeTargetAssemblyToFile path builder =
  do tm <- getTargetMachine
     withModule builder $
       liftBase . errorToIO 'LL.writeTargetAssemblyToFile .
       LL.writeTargetAssemblyToFile tm (LL.File path)
writeTargetAssemblyToFile path builder =
  do tm <- getTargetMachine
     withModule builder $
       liftBase . errorToIO 'LL.writeTargetAssemblyToFile .
       LL.writeTargetAssemblyToFile tm (LL.File path)