# IDA 7.7sp1

**IDA 7.7.220118 (SP1)** ***January 18, 2022***

**Improvements:**

* \+ decompiler: improve handling of volatile reads (some were incorrectly propagated)
* \+ golang: apply reflection function prototypes to methods when available
* \+ golang: create function types from reflection metadata
* \+ PDB: support SP-relative local variables
* \+ UI: speed up Home/End/Digits navigation in sorted choosers

**Bugfixes**

* BUGFIX: debugger: IDA could lock up if the remote debug server stopped responding
* BUGFIX: decompiler: fix interrs when decompiling functions with >64 arguments
* BUGFIX: decompiler: fixed infinite loop while analyzing some golang binaries
* BUGFIX: decompiler: fixed multiple interrs
* BUGFIX: disassembly: parentheses could be missing in complex offset expressions like "target-(base+N)"
* BUGFIX: golang: fixed an interr caused by slice types with circular dependencies
* BUGFIX: golang: remove unnecessary BUILTIN\_SLICE type
* BUGFIX: idaclang would fail to store mangled symbols in the TIL, which means the prototypes would not be detected when loading the TIL with the "Load type library" action)
* BUGFIX: idapython: IDA could crash if None was passed to some API calls
* BUGFIX: kernel: fixed interr 1007 that could occur when processing types with bitfields
* BUGFIX: kernel: get\_item\_size(BADADDR) could return huge values in some situations (should be 1)
* BUGFIX: UI: on Windows, IDA could produce a fatal error "CreateDIBSection failed" when trying to display a very wide hint
* BUGFIX: UI: Options>Compiler>Arguments setting was not saved in the database

***

\\

**IDA 7.7.220125 (7.7 SP1 hotfix, floating only)**

**Bugfixes**

* BUGFIX: floating license IDA could crash on start if there was an error during connection to the server or if working offline (with borrowed license)

***

\\

**IDA 7.7.220118 (7.7 SP1)**

This Service Pack of IDA 7.7 is primarily a bugfix release.

**Complete changelist:**

Decompiler:

* improve return value recognition in golang functions

PPC:

* improved the analysis speed of arrays filled with 0xFF bytes

**Bugfixes**

* BUGFIX: ARM Mac debugger could fail to launch a universal binary when run in instant debugging mode
* BUGFIX: decompiler: fix decompilation of switches when the switch register is reused between range check and indirect jump
* BUGFIX: decompiler: fixed multiple interrs
* BUGFIX: decompiler: fixed wrong warning about lvar allocation failure for functions with scattered return value
* BUGFIX: golang: fix annotation of rtype methods in 64 bit binaries
* BUGFIX: launching the Mac debugger with an empty database could cause the debugged application to behave erratically
* BUGFIX: Local ARM Mac OS debugger was missing from the Run/Attach menus when starting IDA with an empty idb
* BUGFIX: MACHO: IDA would fail to properly load modules from some iOS15 dyldcaches (iPhone X and earlier)
* BUGFIX: PC: movdir64b with wrong operands would be erroneously decoded and cause a crash
* BUGFIX: the Debugger menu could disappear when using IDA Home
* BUGFIX: ui/qt: IDA could fail to display certain unicode codepoints correctly
* BUGFIX: UI: filter dropdown in "Modify filters" dialog could grow too wide if long filter strings were added
* BUGFIX: Windbg: breakpoints were not restored correctly in databases created from DMP files
* BUGFIX: windbg: IDA could loop infinitely when debugging Windows startup on machine with multiple processors
* BUGFIX: XTENSA: label operands for loop instructions were decoded as immediates
