florianschanda/miss_hit

mh_style 'hangs' when there are dits in the function name

Closed this issue · 1 comments

MISS_HIT Component affected
Please choose one from:

  • mh_style

Your MATLAB/Octave environment

  • MATLAB
  • R2018a (9.4.0.813654)

Your operating system and Python version

  • Linux
  • Python 3.11.3

Describe the bug

Discovered by mistake.
Reduced the file to its simplest form to reproduce the bug.

Here is the content: clearly this is not valid matlab / octave and other miss_hit command have not problem parsing it but mh_style does not seem to like it.

$ cat pathToPrint.m 
function pth = foo.bar()


end
$ mh_style pathToPrint.m

Exception in thread Thread-3 (_handle_results):
Traceback (most recent call last):
  File "/home/remi/miniconda3/lib/python3.11/threading.py", line 1038, in _bootstrap_inner
    self.run()
  File "/home/remi/miniconda3/lib/python3.11/threading.py", line 975, in run
    self._target(*self._args, **self._kwargs)
  File "/home/remi/miniconda3/lib/python3.11/multiprocessing/pool.py", line 579, in _handle_results
    task = get()
           ^^^^^
  File "/home/remi/miniconda3/lib/python3.11/multiprocessing/connection.py", line 250, in recv
    return _ForkingPickler.loads(buf.getbuffer())
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: ICE.__init__() missing 1 required positional argument: 'reason'

OK, there are two bugs here:

  • First the ICE (internal compiler error) which I need to fix
  • Then the multiprocessing hanging when said ICE is thrown

Thanks for this find. These are very rare :)