Adding Publisher conformance to a class breaks expected computed property getter calls

I’ve encountered a weird behavior: when I add a Publisher conformance to a class, setters and getters of it's properties stop be called.

This code works as expected:

import Foundation
import Combine

struct Box {
	
	let root = Root()
	var nested: Nested {
		get {
			root.nested
		}
		set {
			root.nested = newValue
		}
	}
}

class Root {
	
	private var _nested = Nested()
	var nested: Nested {
		get {
			print("Accessing nested value")
			return _nested
		}
		set {
			print("Will Set nested value")
			defer {
				print("Did set nested value")
			}
			self._nested = newValue
		}
	}
}

struct Nested {

	private var _value: Int = 0
	var value: Int {
		get {
			print("Accessing value")
			return _value
		}
		set {
			print("Will modify value")
			defer {
				print("Did modify value")
			}
			_value = newValue
		}
	}
}

var box = Box()
box.nested.value = 42
box.nested = Nested()

Output:

Accessing nested value
Will modify value
Did modify value
Will Set nested value
Did set nested value
Will Set nested value
Did set nested value

but this:

import Foundation
import Combine

struct Box {
	
	let root = Root()
	var nested: Nested {
		get {
			root.nested
		}
		set {
			root.nested = newValue
		}
	}
}

class Root: Publisher {
	
	private var _nested = Nested()
	var nested: Nested {
		get {
			print("Accessing nested value")
			return _nested
		}
		set {
			print("Will Set nested value")
			defer {
				print("Did set nested value")
			}
			self._nested = newValue
		}
	}
	
	typealias Output = Void
	typealias Failure = Never
	
	func receive<S>(subscriber: S) where S : Subscriber, Void == S.Input, Never == S.Failure {
	}
}

struct Nested {

	private var _value: Int = 0
	var value: Int {
		get {
			print("Accessing value")
			return _value
		}
		set {
			print("Will modify value")
			defer {
				print("Did modify value")
			}
			_value = newValue
		}
	}
}

var box = Box()
box.nested.value = 42
box.nested = Nested()

Output:

Will modify value
Did modify value

I see, it's a Combine.print, not Swift.print