Ну не совсем баг, но тоже интересно:

## Код:
```
MODULE ModA;
  TYPE
    Base = EXTENSIBLE RECORD
      field* : INTEGER;
    END;

    Type1* = RECORD(Base)
      field1* : INTEGER;
    END;
END ModA.
```


Если на это сказать "Interface" из контекстного меню, получим
## Код:
```
DEFINITION ModA;
  TYPE
    Type1 = RECORD(Base)
      field1 : INTEGER;
    END;
END ModA.
```


А если "Client interface" из меню Info, то
## Код:
```
DEFINITION ModA;
  TYPE
    Type1 = RECORD(Base)
      field : INTEGER;
      field1 : INTEGER;
    END;
END ModA.
```

Вообще логично, но иногда неудобно.

А что касается потерянного метода - это не баг компилятора, это баг языка. В описании не прописано поведение в конкретном случае. Этот же баг есть и в оригинальном Обероне(-1), но там нет абстрактных методов, поэтому он не так заметен.