https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68819
--- Comment #1 from David Malcolm <dmalcolm at gcc dot gnu.org> --- (In reply to Tobias Burnus from comment #0) > I get the following bogus warning: > > Quadtree.h:210:0: warning: statement is indented as if it were guarded by... > [-Wmisleading-indentation] > unsigned int get_max_index() const { if (ul) return 4; return 0; } > > > Quadtree.h:210:0: note: ...this ‘if’ clause, but it is not > > > For some reasons, a quick attempt to create a test case failed. I think it > has something to do with the reason that the column number is 0. The warning heavily relies on comparing column numbers, so if these are all 0, it's going to malfunction. > I also do > not get it for all "Quadtree<T>" but only once for project. BTW, "ul" is > defined as: > QuadtreeT<T, C> *ul; > > > I will try to create a working reduced example. Yes please. Is it a file with many includes? libcpp can go into a fallback mode where it stops supplying column numbers, when location_t goes >= LINE_MAP_MAX_LOCATION_WITH_COLS.