** The launch and attach requests now accept the adaSourceCharset
parameter.
+ ** Constants are now returned in scopes.
+
* Changed remote packets
single-inf-arg in qSupported
if sym.is_argument:
if not traversed_link:
continue
- elif not sym.is_variable:
+ elif not sym.is_variable and not sym.is_constant:
# We use an 'elif' here because is_variable
# returns False for arguments as well. Anyway,
- # don't include non-variables here.
+ # don't include non-variables here, but remember
+ # to treat local constants the same as variables.
continue
elif sym.is_artificial:
# Skip artificial symbols.
gdb_assert {[dict get $regs name] == "Registers"} "register scope"
set num_vars [dict get $locals namedVariables]
-gdb_assert {$num_vars == 1} "correct number of locals"
+gdb_assert {$num_vars == 2} "correct number of locals"
set num [dict get $locals variablesReference]
set refs [lindex [dap_check_request_and_response "fetch variables" \
switch -nocase -- $name {
"\\u03a0" -
"\\u03a6" -
+ "\\u03c0" -
+ "\\u03c6" -
"Π" -
- "π" {
+ "π" -
+ "Φ" -
+ "φ" {
# Ok.
}
default {
procedure Prog is
π : Integer := 3; -- The Indiana Approximation.
+ φ : constant := 7; -- Not even close.
begin
Do_Nothing (π'Address); -- BREAK
end Prog;
gdb_assert {[dict get $scope name] == "Locals"} "scope is locals"
gdb_assert {[dict get $scope source name] == "prog.adb"} "scope has source"
-gdb_assert {[dict get $scope namedVariables] == 2} "two vars in scope"
+gdb_assert {[dict get $scope namedVariables] == 5} "five vars in scope"
set num [dict get $scope variablesReference]
set refs [lindex [dap_check_request_and_response "fetch variables" \
}
"my_string" {
}
+ "one" -
+ "two" {
+ # Local enumerators appear in the scope.
+ }
default {
fail "unknown variable $name"
}