+ if (cpp->tokens.next) {
+ free(cpp->tokens.iter);
+ cpp->tokens.iter = cpp->tokens.next;
+ cpp->tokens.next = NULL;
+ }
+
+ *tokens = cpp->tokens.iter;
+
+ if (temp.tokens.iter) {
+ cpp->tokens.iter = temp.tokens.iter;
+ cpp->tokens.next = temp.tokens.next;