Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • D dynamorio
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,467
    • Issues 1,467
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 44
    • Merge requests 44
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • DynamoRIO
  • dynamorio
  • Issues
  • #4056
Closed
Open
Issue created Jan 26, 2020 by Derek Bruening@derekbrueningContributor

Multiple points of failure in drsyms-test with VS2017

We're trying to move to VS2017 but it is causing multiple failures in drsyms-test. I wanted to document them separately from #2924 (closed).

name_available is strangely 4 bytes too large:

158: name=|_wctype| sz=7 vs avail=7
158: name=|TrailingUpVec| sz=13 vs avail=13
158: name=|TrailingUpVec| sz=13 vs avail=13
158: name=|__acrt_multibyte_initializer| sz=28 vs avail=28
158: name=|__acrt_locale_changed_data| sz=26 vs avail=26
158: name=|Two52| sz=5 vs avail=5
158: name=|parse_command_line<>| sz=20 vs avail=24  parse_command_line<>_da

Then we have lots of type mismatches:

158: mismatch: |uninitialize_global_state_isolation| id=1201 type=3,1084 prev=|_isatty|
158: mismatch: |uninitialize_c| id=1287 type=3,1084 prev=|__crt_strtox::parse_integer<>|
158: mismatch: |report_memory_leaks| id=1201 type=3,1084 prev=|page_size|
158: mismatch: |free_environment<>| id=1677 type=3,1499 prev=|__security_check_cookie|
158: mismatch: |`<>::operator()'::`2'::c_exit_complete| id=0 type=1,465 prev=|_imp__ExitProcess|
158: mismatch: |`__local_stdio_scanf_options'::`2'::_OptionsStorage| id=0 type=1,3989 prev=|_NULL_IMPORT_DESCRIPTOR|

And finally:

158: symbol had wrong mangling:
158:  expected: dll_export
158:  actual: _dll_export

Wait, one more: compound arg `anonymous-namespace'::Foo and ::HasFields at the top of the expected output are in the reverse order.

The last one is understandable and is our test being too rigid, but the others all seem like bugs or flakiness or at the least undesirable behavior in dbghelp.dll. I'm using '/c/Program Files (x86)/Microsoft Visual Studio/2017/Professional/Common7/IDE/Remote Debugger/x86/dbghelp.dll'.

Assignee
Assign to
Time tracking