>-- With standard package
#^^ source.ada comment.line.ada
#  ^^^^^^^^^^^^^^^^^^^^^^ source.ada comment.line.ada
>with Ada.Text_IO;
#^^^^ source.ada keyword.other.ada
#    ^ source.ada
#     ^^^ source.ada entity.name.label.ada
#        ^ source.ada entity.name.operator.ada
#         ^^^^^^^ source.ada entity.name.label.ada
#                ^ source.ada punctuation.ada
>
>-- With package from project
#^^ source.ada comment.line.ada
#  ^^^^^^^^^^^^^^^^^^^^^^^^^^ source.ada comment.line.ada
>with Bar;
#^^^^ source.ada keyword.other.ada
#    ^ source.ada
#     ^^^ source.ada entity.name.label.ada
#        ^ source.ada punctuation.ada
>
>-- With package outside project
#^^ source.ada comment.line.ada
#  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.ada comment.line.ada
>with Pkg_Out_Prj;
#^^^^ source.ada keyword.other.ada
#    ^ source.ada
#     ^^^^^^^^^^^ source.ada entity.name.label.ada
#                ^ source.ada punctuation.ada
>
>package body Refs is
#^^^^^^^ source.ada keyword.other.ada
#       ^ source.ada
#        ^^^^ source.ada keyword.other.ada
#            ^ source.ada
#             ^^^^ source.ada entity.name.label.ada
#                 ^ source.ada
#                  ^^ source.ada keyword.other.ada
>   Global1 : Integer := 0;
#^^^ source.ada
#   ^^^^^^^ source.ada meta.declaration.object.ada variable.name.ada
#          ^ source.ada meta.declaration.object.ada
#           ^ source.ada meta.declaration.object.ada punctuation.ada
#            ^ source.ada
#             ^^^^^^^ source.ada entity.name.label.ada
#                    ^ source.ada
#                     ^^ source.ada entity.name.operator.assignment.ada
#                       ^ source.ada
#                        ^ source.ada constant.numeric.ada
#                         ^ source.ada punctuation.ada
>
>   procedure Proc1 (Arg1, Arg2 : Integer) is
#^^^ source.ada
#   ^^^^^^^^^ source.ada meta.declaration.subprogram.ada keyword.other.ada
#            ^ source.ada meta.declaration.subprogram.ada
#             ^^^^^ source.ada meta.declaration.subprogram.ada entity.name.function.ada
#                  ^^ source.ada
#                    ^^^^ source.ada meta.declaration.object.ada variable.name.ada
#                        ^ source.ada meta.declaration.object.ada punctuation.ada
#                         ^ source.ada meta.declaration.object.ada
#                          ^^^^ source.ada meta.declaration.object.ada variable.name.ada
#                              ^ source.ada meta.declaration.object.ada
#                               ^ source.ada meta.declaration.object.ada punctuation.ada
#                                ^ source.ada
#                                 ^^^^^^^ source.ada entity.name.label.ada
#                                        ^^ source.ada
#                                          ^^ source.ada keyword.other.ada
>      Y : Integer := Arg1 + Arg2 + Global1;
#^^^^^^ source.ada
#      ^ source.ada meta.declaration.object.ada variable.name.ada
#       ^ source.ada meta.declaration.object.ada
#        ^ source.ada meta.declaration.object.ada punctuation.ada
#         ^ source.ada
#          ^^^^^^^ source.ada entity.name.label.ada
#                 ^ source.ada
#                  ^^ source.ada entity.name.operator.assignment.ada
#                    ^ source.ada
#                     ^^^^ source.ada entity.name.label.ada
#                         ^ source.ada
#                          ^ source.ada entity.name.operator.ada
#                           ^ source.ada
#                            ^^^^ source.ada entity.name.label.ada
#                                ^ source.ada
#                                 ^ source.ada entity.name.operator.ada
#                                  ^ source.ada
#                                   ^^^^^^^ source.ada entity.name.label.ada
#                                          ^ source.ada punctuation.ada
>   begin
#^^^ source.ada
#   ^^^^^ source.ada keyword.other.ada
>      null;
#^^^^^^ source.ada
#      ^^^^ source.ada variable.other.constant.ada
#          ^ source.ada punctuation.ada
>   end Proc1;
#^^^ source.ada
#   ^^^ source.ada keyword.other.ada
#      ^ source.ada
#       ^^^^^ source.ada entity.name.label.ada
#            ^ source.ada punctuation.ada
>
>   function Expr_Fct (Arg1, Arg2 : Integer) return Integer
#^^^ source.ada
#   ^^^^^^^^ source.ada meta.declaration.subprogram.ada keyword.other.ada
#           ^ source.ada meta.declaration.subprogram.ada
#            ^^^^^^^^ source.ada meta.declaration.subprogram.ada entity.name.function.ada
#                    ^^ source.ada
#                      ^^^^ source.ada meta.declaration.object.ada variable.name.ada
#                          ^ source.ada meta.declaration.object.ada punctuation.ada
#                           ^ source.ada meta.declaration.object.ada
#                            ^^^^ source.ada meta.declaration.object.ada variable.name.ada
#                                ^ source.ada meta.declaration.object.ada
#                                 ^ source.ada meta.declaration.object.ada punctuation.ada
#                                  ^ source.ada
#                                   ^^^^^^^ source.ada entity.name.label.ada
#                                          ^^ source.ada
#                                            ^^^^^^ source.ada keyword.other.ada
#                                                  ^ source.ada
#                                                   ^^^^^^^ source.ada entity.name.label.ada
>   is (Arg1 + Arg2 + Global);
#^^^ source.ada
#   ^^ source.ada keyword.other.ada
#     ^^ source.ada
#       ^^^^ source.ada entity.name.label.ada
#           ^ source.ada
#            ^ source.ada entity.name.operator.ada
#             ^ source.ada
#              ^^^^ source.ada entity.name.label.ada
#                  ^ source.ada
#                   ^ source.ada entity.name.operator.ada
#                    ^ source.ada
#                     ^^^^^^ source.ada entity.name.label.ada
#                           ^ source.ada
#                            ^ source.ada punctuation.ada
>
>end Refs;
#^^^ source.ada keyword.other.ada
#   ^ source.ada
#    ^^^^ source.ada entity.name.label.ada
#        ^ source.ada punctuation.ada
>