As mentioned in the subject line, I've added Bug 8416 - "remove C++ incompatibilities from packet-pw-atm.c" with the associated patch. Doing a little forensic work on the C++ incompatibilities still present in the code base, here are the types of issues of the 4919 "c++-incompat" lines in a compilation of the latest source using gcc on a Linux box (Fedora 17) (before this patch):
type count percent
implicit_casts 4013 81.58%
keyword_use 634 12.89%
enum_conversion 197 4.00%
uninit_const 7 0.14%
field_typedef 5 0.10%
special_operator 3 0.06%
incompat_ptr 2 0.04%
other 58 1.18%
It's clear that the vast majority of these (over 98%) are of only three different kinds which are mostly trivial fixes. I do want to point out, however, that the way I chose to resolve the enum_conversion complaint was to change the type of one member of a struct from an enum type to an int. The longer version of the rationale is in the bug report. If we find this kind of patch acceptable, and desirable, I'll do more.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8416
Ed