| 1032 | } |
| 1033 | |
| 1034 | TypeBuilder DemangleGNU3::DemangleUnqualifiedName() |
| 1035 | { |
| 1036 | indent() |
| 1037 | MyLogDebug("%s: '%s'\n", __FUNCTION__, m_reader.GetRaw().c_str()); |
| 1038 | |
| 1039 | TypeBuilder outType; |
| 1040 | char elm1 = m_reader.Read(); |
| 1041 | char elm2 = m_reader.Read(); |
| 1042 | switch (hash(elm1, elm2)) |
| 1043 | { |
| 1044 | case hash('n','t'): // ! |
| 1045 | case hash('n','g'): // - (unary) |
| 1046 | case hash('p','s'): // + (unary) |
| 1047 | case hash('a','d'): // & (unary) |
| 1048 | case hash('d','e'): // * (unary) |
| 1049 | case hash('i','x'): // [] |
| 1050 | case hash('p','p'): // ++ (postfix in <expression> context) |
| 1051 | case hash('m','m'): // -- (postfix in <expression> context) |
| 1052 | case hash('l','s'): // << |
| 1053 | case hash('r','s'): // >> |
| 1054 | case hash('a','S'): // = |
| 1055 | case hash('e','q'): // == |
| 1056 | case hash('n','e'): // != |
| 1057 | case hash('p','t'): // -> |
| 1058 | case hash('d','t'): // . |
| 1059 | case hash('m','l'): // * |
| 1060 | case hash('m','i'): // - |
| 1061 | case hash('p','l'): // + |
| 1062 | case hash('a','n'): // & |
| 1063 | case hash('p','m'): // ->* |
| 1064 | case hash('d','v'): // / |
| 1065 | case hash('r','m'): // % |
| 1066 | case hash('l','t'): // < |
| 1067 | case hash('l','e'): // <= |
| 1068 | case hash('g','t'): // > |
| 1069 | case hash('g','e'): // >= |
| 1070 | case hash('c','m'): // , |
| 1071 | case hash('c','l'): // () |
| 1072 | case hash('c','o'): // ~ |
| 1073 | case hash('e','o'): // ^ |
| 1074 | case hash('o','r'): // | |
| 1075 | case hash('a','a'): // && |
| 1076 | case hash('o','o'): // || |
| 1077 | case hash('m','L'): // *= |
| 1078 | case hash('p','L'): // += |
| 1079 | case hash('m','I'): // -= |
| 1080 | case hash('d','V'): // /= |
| 1081 | case hash('r','M'): // %= |
| 1082 | case hash('r','S'): // >>= |
| 1083 | case hash('l','S'): // <<= |
| 1084 | case hash('a','N'): // &= |
| 1085 | case hash('o','R'): // |= |
| 1086 | case hash('e','O'): // ^= |
| 1087 | outType = CreateUnknownType("operator" + GetOperator(elm1, elm2)); |
| 1088 | outType.SetNameType(GetNameType(elm1, elm2)); |
| 1089 | break; |
| 1090 | case hash('t','i'): |
| 1091 | case hash('t','e'): |
nothing calls this directly
no test coverage detected