[flang] Do not resolve TRIM/REPEAT length to its argument length
For TRIM and REPEAT calls, semantics was creating ProcedureDesignators using the length parameter of the arguments. This caused bugs when folding LEN(TRIM(char_explicit_constant_length)). The same did not appeared in folding for REPEAT because it is rewritten at a higher level to LEN(c)*N. This is not only a folding issue since any place (like lowering) may try to use the bad length parameter from the created ProcedureDesignator. Update intrinsic resolution to not copy the length parameter for TRIM and REPEAT. Differential Revision: https://reviews.llvm.org/D134970
Loading
Please sign in to comment