1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openharmony-arkcompiler_ets_frontend

 / Детали:

[Ошибка]: Сообщения об ошибках: имя типа должно совпадать с тем, которое используется программистом в...

Предстоит сделать
Владелец
Создано  
04.03.2025

исходном коде

Какова проблема?

A. Программист использует тип Number, а сообщение об ошибке — тип double. Это неправильно!
B. Аналогичная ситуация с псевдонимами типа
C. Проверка грамматики должна выполняться для всех сообщений об ошибках компилятора!!!

Относительная проблема
В исходном коде нет типов double или Double!

class Base {
    foo(): Number { return 5 }
}
class Derived extends Base {
    foo(): number { return 5 }
}
TypeError: foo(): double в Derived не может переопределять foo(): Double в Base, так как тип возвращаемого значения при переопределении несовместим с другим типом возвращаемого значения. [prog.ets:5:5]
Есть B, но нет Base в строке 7

type B = Base
type D = Derived
class Base {
    foo(): D { return new D }
}
class Derived extends B {
    foo(): B { return new B } // Это строка 7
}
TypeError: foo(): Base в Derived не может переопределять foo(): Derived в Base, так как тип возвращаемого значения при переопределении несовместим с другим типом возвращаемого значения. [prog.ets:7:5]

Какое поведение ожидалось?

number должен называться number
псевдоним типа должен использоваться там, где он используется
запросить технического писателя проверить грамматическую корректность всех сообщений об ошибках компилятора

Как воспроизвести эту ошибку

используйте ./out/bin/es2panda для компиляции двух приведённых выше примеров.

Дополнительная информация

Информация о версии или ветке

  • master
  • 5.0-Beta1
  • Release 4.1
  • Release 4.0
  • Release 3.2

Комментарий (0)

GitLife Service Account Задача создана
GitLife Service Account добавлено
 
bug
label.
GitLife Service Account добавлено
 
waiting_for_assign
label.
Развернуть журнал операций

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/openharmony-arkcompiler_ets_frontend.git
git@api.gitlife.ru:oschina-mirror/openharmony-arkcompiler_ets_frontend.git
oschina-mirror
openharmony-arkcompiler_ets_frontend
openharmony-arkcompiler_ets_frontend