[flang] Dodge bogus uninitialized data warning from gcc 10.1 via code cleanup
G++ 10.1 emits inappropriate "use of uninitialized data" warnings when compiling f18. The warnings stem from two sites in templatized code whose multiple instantiations magnified the number of warnings. These changes dodge those warnings by making some innocuous changes to the code. In the parser, the idiom defaulted(cut >> x), which yields a parser that always succeeds, has been replaced with a new equivalent pass<T>() parser that returns a default-constructed value T{} in an arguably more readable fashion. This idiom was the only attestation of the basic parser cut, so it has been removed and the remaining code simplified. In Evaluate/traverse.h, a return {}; was replaced with a return of a default-constructed member. Differential Revision: https://reviews.llvm.org/D81747
Loading
Please register or sign in to comment