This commit is contained in:
Бондарев Иван 2018-10-03 21:46:20 +02:00
parent 37733573a5
commit c8efdf5d53
8 changed files with 31 additions and 4 deletions

View file

@ -2,7 +2,7 @@
// This CSharp output file generated by Gardens Point LEX
// Version: 1.1.3.301
// Machine: IVAN-PC
// DateTime: 03.10.2018 19:30:33
// DateTime: 03.10.2018 21:42:41
// UserName: Ivan
// GPLEX input file <ABCPascal.lex>
// GPLEX frame file <embedded resource>

View file

@ -1669,6 +1669,8 @@ class_attributes1
}
| class_attributes1 class_attribute
{
if (((class_attribute)$1 & (class_attribute)$2) == (class_attribute)$2)
parsertools.AddErrorFromResource("ATTRIBUTE_REDECLARED",@2);
$$ = ((class_attribute)$1) | ((class_attribute)$2);
//$$ = $1;
}

View file

@ -2,7 +2,7 @@
// GPPG version 1.3.6
// Machine: IVAN-PC
// DateTime: 03.10.2018 19:30:35
// DateTime: 03.10.2018 21:42:43
// UserName: Ivan
// Input file <ABCPascal.y>
@ -3917,6 +3917,8 @@ public partial class GPPGParser: ShiftReduceParser<PascalABCSavParser.Union, Lex
break;
case 294: // class_attributes1 -> class_attributes1, class_attribute
{
if (((class_attribute)ValueStack[ValueStack.Depth-2].ob & (class_attribute)ValueStack[ValueStack.Depth-1].ob) == (class_attribute)ValueStack[ValueStack.Depth-1].ob)
parsertools.AddErrorFromResource("ATTRIBUTE_REDECLARED",LocationStack[LocationStack.Depth-1]);
CurrentSemanticValue.ob = ((class_attribute)ValueStack[ValueStack.Depth-2].ob) | ((class_attribute)ValueStack[ValueStack.Depth-1].ob);
//$$ = $1;
}

View file

@ -0,0 +1,5 @@
type A = static static class
end;
begin
end.

View file

@ -0,0 +1,5 @@
type A = auto sealed auto class
end;
begin
end.

View file

@ -66,4 +66,5 @@ TWO_NILS_IN_QUESTION_EXPR=The conditional expression cannot contain nil constant
DOT_QUECTION_IN_SHORT_FUN=Expression with ?. cannot appear in a short function definition without a return value
BAD_INT2=Too small int64
INVALID_INTERFACE_MEMBER=Interface members cannot have definitions
EXTENDED_INDEXED_PROPERTIES=Extended indexed properties are not realized
EXTENDED_INDEXED_PROPERTIES=Extended indexed properties are not realized
ATTRIBUTE_REDECLARED=This attribute has been already applied to type

View file

@ -26,6 +26,7 @@ ENDIF_ABSENT=Незакрытая директива $ifdef или $ifndef - о
UNNECESSARY $else=Лишний $else
TYPE_NAME_EXPECTED=Ожидался тип
EOF1=конец файла
EOF=(конец файла)
TKIDENTIFIER=идентификатор
@ -67,3 +68,4 @@ BAD_INT2=Слишком маленькое целое
INVALID_INTERFACE_MEMBER=Члены интерфейса не могут иметь определение
EXTENDED_INDEXED_PROPERTIES=Индексные свойства не могут быть расширенными
TWO_STRING_LITERALS_IN_SUCCESSION=Две литеральные строковые константы не могут стоять подряд
ATTRIBUTE_REDECLARED=Повоторное применение атрибута

View file

@ -57,4 +57,14 @@ ONE_TYPE_PARAMETER_MUSTBE_WITHOUT_PARENTHESES=Одинокий типовий п
USING_UNLOCAL_FOR_VARIABLE=Параметр циклу for в PascalABC.NET потрібно описувати в заголовку циклу
USING_UNLOCAL_FOREACH_VARIABLE=Параметр циклу foreach потрібно описувати в заголовку циклу
OVERLOAD_IS_NOT_USED=overload не використовується в PascalABC.NET
OVERLOAD_IS_NOT_USED=overload не використовується в PascalABC.NET
ONLY_BASE_ASSIGNMENT_FOR_TUPLE=Для кортежа допустимо только обычное присваивание :=
BAD_FORMAT_STRING=Встречена неправильная форматная строка
TUPLE_ELEMENTS_COUNT_MUST_BE_LESSEQUAL_7=Количество элементов кортежа не должно быть больше 7
TWO_NILS_IN_QUESTION_EXPR=Условное выражение не может содержать константы nil по обеим веткам
DOT_QUECTION_IN_SHORT_FUN=Выражение с ?. не может фигурировать в коротком определении функции без возвращаемого значения
BAD_INT2=Слишком маленькое целое
INVALID_INTERFACE_MEMBER=Члены интерфейса не могут иметь определение
EXTENDED_INDEXED_PROPERTIES=Индексные свойства не могут быть расширенными
TWO_STRING_LITERALS_IN_SUCCESSION=Две литеральные строковые константы не могут стоять подряд
ATTRIBUTE_REDECLARED=Повторное задание атрибута