Lines Matching full:result

47   MacroArgs *Result;  in create()  local
51 Result = new ( in create()
55 Result = *ResultEnt; in create()
57 *ResultEnt = Result->ArgCache; in create()
58 Result->NumUnexpArgTokens = UnexpArgTokens.size(); in create()
59 Result->VarargsElided = VarargsElided; in create()
60 Result->NumMacroArgs = MI->getNumParams(); in create()
63 // Copy the actual unexpanded tokens to immediately after the result ptr. in create()
70 Result->getTrailingObjects<Token>()); in create()
73 return Result; in create()
124 const Token *Result = Start; in getUnexpArgument() local
127 for (; Arg; ++Result) { in getUnexpArgument()
128 assert(Result < Start+NumUnexpArgTokens && "Invalid arg #"); in getUnexpArgument()
129 if (Result->is(tok::eof)) in getUnexpArgument()
132 assert(Result < Start+NumUnexpArgTokens && "Invalid arg #"); in getUnexpArgument()
133 return Result; in getUnexpArgument()
169 std::vector<Token> &Result = PreExpArgTokens[Arg]; in getPreExpArgument() local
170 if (!Result.empty()) return Result; in getPreExpArgument()
177 // Otherwise, we have to pre-expand this argument, populating Result. To do in getPreExpArgument()
184 // Lex all of the macro-expanded tokens into Result. in getPreExpArgument()
186 Result.push_back(Token()); in getPreExpArgument()
187 Token &Tok = Result.back(); in getPreExpArgument()
189 } while (Result.back().isNot(tok::eof)); in getPreExpArgument()
199 return Result; in getPreExpArgument()
219 SmallString<128> Result; in StringifyArgument() local
220 Result += "\""; in StringifyArgument()
226 Result += ' '; in StringifyArgument()
241 Result.append(Str.begin(), Str.end()); in StringifyArgument()
248 unsigned CurStrLen = Result.size(); in StringifyArgument()
249 Result.resize(CurStrLen+Tok.getLength()); in StringifyArgument()
250 const char *BufPtr = Result.data() + CurStrLen; in StringifyArgument()
257 if (ActualTokLen && BufPtr != &Result[CurStrLen]) in StringifyArgument()
258 memcpy(&Result[CurStrLen], BufPtr, ActualTokLen); in StringifyArgument()
262 Result.resize(CurStrLen+ActualTokLen); in StringifyArgument()
269 if (Result.back() == '\\') { in StringifyArgument()
272 unsigned FirstNonSlash = Result.size()-2; in StringifyArgument()
274 while (Result[FirstNonSlash] == '\\') in StringifyArgument()
276 if ((Result.size()-1-FirstNonSlash) & 1) { in StringifyArgument()
279 Result.pop_back(); // remove one of the \'s. in StringifyArgument()
282 Result += '"'; in StringifyArgument()
284 // If this is the charify operation and the result is not a legal character in StringifyArgument()
288 Result[0] = '\''; in StringifyArgument()
289 Result[Result.size()-1] = '\''; in StringifyArgument()
293 if (Result.size() == 3) in StringifyArgument()
294 isBad = Result[1] == '\''; // ''' is not legal. '\' already fixed above. in StringifyArgument()
296 isBad = (Result.size() != 4 || Result[1] != '\\'); // Not '\x' in StringifyArgument()
300 Result = "' '"; // Use something arbitrary, but legal. in StringifyArgument()
304 PP.CreateString(Result, Tok, in StringifyArgument()