MakeOTF error "empty block"

I get a MakeOTF error message when compiling my opentype features : it says there is an empty block in my classes (which aren’t empty), even if I make an automatic “All” class. It was working earlier, I don’t understand where it comes from. Could you help me to fix it?



This tutorial might give you hint where to look:

Do you have a prefix containing class definitions?

No Rainer, only a prefix with lookups, calling classes but not defining them.

Thank you Georg, I found it! After a few modification I had a diferent message:

I didn’t understand because there wasn’t even a line 7 in the class All.
So I tried the generateFont command and it showed me where the problem was… Obviously, it was only a syntax error in one of my lookups. But in my prefix “my_lookups”, not in any class.

Thank you for your time!

An OT error is sometimes referenced in the item that follows the problem. In what precedes the All class, there may be the start of a lookup definition, but it may not be closed properly: lookup xxx {...} xxx;

Perhaps the semicolon missing?

Well, that shouldn’t happen. Classes need to be defined before they are called.
Can you post the content of the prefix?

Yes, that was the problem, it wasn’t closed properly… I wrote: lookup xxx {…} lookup xxx;
My bad, I’m a beginner in opentype and still not very comfortable with syntax.

But now it works, even though I call the classes in the “prefix” section but only define them in the “class” section.
I guess it’s fine as in the features.fea doc the class section goes befor the lookups.