This commit is contained in:
Ivan Bondarev 2021-10-17 14:46:34 +02:00
parent 897ea61b32
commit d23856cd6f
4 changed files with 2596 additions and 2562 deletions

View file

@ -2,7 +2,7 @@
// This CSharp output file generated by Gardens Point LEX
// Version: 1.1.3.301
// Machine: DESKTOP-2BJCJ7I
// DateTime: 07.10.2021 20:25:46
// DateTime: 17.10.2021 14:43:37
// UserName: ibond
// GPLEX input file <ABCPascal.lex>
// GPLEX frame file <embedded resource>

View file

@ -154,7 +154,7 @@
%type <td> set_type
%type <ex> as_is_expr as_is_constexpr is_type_expr as_expr power_expr power_constexpr
%type <td> unsized_array_type simple_type_or_ simple_type simple_type_question/*array_name_for_new_expr*/ foreach_stmt_ident_dype_opt fptype type_ref fptype_noproctype array_type
%type <td> template_param template_empty_param structured_type unpacked_structured_type empty_template_type_reference simple_or_template_type_reference type_ref_or_secific for_stmt_decl_or_assign type_decl_type
%type <td> template_param template_empty_param structured_type unpacked_structured_type empty_template_type_reference simple_or_template_type_reference simple_or_template_or_question_type_reference type_ref_or_secific for_stmt_decl_or_assign type_decl_type
%type <stn> type_ref_and_secific_list
%type <stn> type_decl_sect
%type <stn> try_handler
@ -3368,6 +3368,17 @@ simple_or_template_type_reference
}
;
simple_or_template_or_question_type_reference
: simple_or_template_type_reference
{
$$ = $1;
}
| simple_type_question
{
$$ = $1;
}
;
optional_array_initializer
: tkRoundOpen typed_const_list tkRoundClose
{
@ -4026,7 +4037,7 @@ mulop
;
default_expr
: tkDefault tkRoundOpen simple_or_template_type_reference tkRoundClose
: tkDefault tkRoundOpen simple_or_template_or_question_type_reference tkRoundClose
{
$$ = new default_operator($3 as named_type_reference, @$);
}

File diff suppressed because it is too large Load diff

4
TestSuite/default3.pas Normal file
View file

@ -0,0 +1,4 @@
begin
var x := default(byte?);
assert(x = nil);
end.