// PR c++/85214
// { dg-do compile { target c++17 } }

struct g {
  constexpr operator int() { return true; }
};
template <typename T, typename U> constexpr bool m = true;
template <long L> struct C { typedef double q; };
void ao() {
  [](auto i) {
      using ar = typename C<i>::q;
      [](auto j) {
	using as = typename C<j>::q;
	if constexpr (m<ar, as>) {}
      }(g());
  }(g());
}
