>> How did you create the project (CubeMX or System Workbench)?
>> How did you create the Release (no-debug) build configuration (if you have to, that is if you created the project using CubeMX)?
Manage Configurations -> New... -> (enter name and description, copy from Debug) -> OK
Then Project -> Properties -> C/C++ Build -> Settings
Select Configuration: Release
-> Debugging to None
-> Optimization to Most
(Just retested, at this point all is well)
Exit ac6, Run CUBE, make some changes
Poof, Sybols are gone.
(So, obvious in the retest that it’s Cube thats the problem, not ac6)
>> How did you select the Release build? Did you activate the Release build configuration (project >> Build Configurations >> Set Active >> Release or Debug)?
In the retest I never selected the Release build.
>> Build configurations place their output in directory trees named after the configuration (Debug or Release); Could you check the debugging configuration (project >> Debug As >> Debug Configurations...) and verify it selects the right executable (Debug/program.elf or Release/program.elf)?
It selected the correct elf.
>> Could you compare the .project/.cproject files before and after doing the Release build?
The first time I did not have a saved project, instead I had another project (similar, same board) that was still working.
When I compared the .project files there were a match (names were different of course).