Bug fixed in 10.1.0 via paclet update

Since a few days now, each time I open a new Mathematica session I get the small red error popup window with the error messages:

Throw::nocatch: Uncaught Throw[False] returned to top level.

repeated many times, as you can see from this screenshot:

enter image description here

Apart from the error window, Mathematica seems to work without problems. I didn't do anything "strange" with Mathematica recently, no new installation or update or anything of the sort.

What does this error mean, and what are the possible causes and fixes?

  • $\begingroup$ I have the very same `problem' since today! I just tried plying with the cloud since 2-3 days ago... could that be somehow related? $\endgroup$
    – user29932
    Jun 3, 2015 at 12:37
  • $\begingroup$ I actually never did anything related to the cloud.. To my knowledge at least $\endgroup$
    – glS
    Jun 3, 2015 at 15:05

2 Answers 2


Eventually, I was able to reproduce this problem. The way to fix it is to delete the MLCleaner-1.0 directory in $UserBaseDirectory/Paclets/Repository, then restart Mathematica and run RebuildPacletData[].

The underlying reason is the same as in 84539, though it was triggered by the use of a different top-level function depending on Throw/Catch during kernel startup.

  • $\begingroup$ This did the trick, thank you very much! Only one thing: the folder MLCleaner wasn't rebuilt with that command, is this a problem? What is it for? $\endgroup$
    – glS
    Jun 4, 2015 at 6:32
  • 1
    $\begingroup$ @glance Glad it worked! MLCleaner is a small, one time use utility paclet. Its only purpose is to uninstall a broken Machine Learning paclet update that was causing problems for some users. This instance of Throw messages will be automatically fixed by a MLCleaner update which I understand is undergoing final checks before being uploaded to the paclet servers. $\endgroup$
    – ilian
    Jun 4, 2015 at 14:19
  • 1
    $\begingroup$ @Mr.Wizard I believe this is intended for backward compatibility when the next version introduces a change in the internal structure of e.g. QuantityArrays. Since the new format can appear in downloaded data (which can be shared between several versions of Mathematica) the patch allows older versions to convert it to the format they understand. Which version was this and did you have anything in your init.m file? As a workaround, I would edit the PacletInfo.m so the patch code does not run on startup, but it could still be loaded manually if needed. $\endgroup$
    – ilian
    Oct 12, 2019 at 7:17
  • 1
    $\begingroup$ @Mr.Wizard No, I see where the problem is. There was a change in how the Paclet Manager processes the comma-separated version list in PacletInfo.m, but that fix only went in version 10.2. Version 10.1 will still give the messages, which are the undesirable result of a StringTrim call during kernel startup (so e.g. someone who used StringTrim in init.m would get similar errors). This should have been tested better before releasing a paclet update that would retroactively affect 10.1. I have let the appropriate people know about this bug. $\endgroup$
    – ilian
    Oct 12, 2019 at 20:02
  • 1
    $\begingroup$ @Mr.Wizard I was hoping it was already fixed. We had to release a set of individual StructuredArrayPatch paclets for each version. The update should happen automatically in due course, but just in case, please try PacletSiteUpdate /@ PacletSites[]; PacletUpdate["StructuredArrayPatch"] $\endgroup$
    – ilian
    Dec 16, 2019 at 20:46

I had exactly this same problem two days ago. I tried numerous fixes, but I finally had to uninstall Mathematica and all of its library files, and then I did a clear install of Mathematica. This fixed the problem, except it initially seemed to have broken my CUDA.

After the clean install I couldn't get Mathematica to automatically sign me into the Wolfram cloud, but that problem was fixed by executing CloudConnect[] in new Mathematica session.

My broken CUDA was fixed by manually downloading the Mathematica 10 CUDA resources file from the Wolfram server and then executing:


CUDAResourcesInstall["path-to-download", Update->True]


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.