in src/langs/cpp/combinator.js [1814:1833]
grammerReturn(emitter, gram) {
if (is.void(this.funcReturnType)) {
emitter.emit('return');
return;
}
emitter.emit('return ');
if (gram.type === 'null') {
this.grammerValue(emitter, new GrammerValue('null'), false, false);
} else if (gram.type === 'grammer') {
let returnPointer = this.isPointerType(this.funcReturnType);
if (this.isPointerVar(gram.expr) && !returnPointer) {
emitter.emit('*');
}
this.grammer(emitter, gram.expr, false, false);
} else if (gram.type === 'string') {
emitter.emit('string("")');
} else {
this.grammer(emitter, gram.expr, false, false);
}
}