오늘 들은 답변중에서,
(1) 미사용 참조자의 수명이 스코프를 벗어나기 이전에 끝났다
라는 힌트랑
(2) 수명에 의해 관리되는것이 맞다
라는 힌트가 주요했음.

내가 안그래도 라이프타임이 헷갈리긴 해서
공간적인 참조자 얽힘이 혹시 라이프타임과 관련된거냐고 물어봤는데, 실제로 내 라이프타임에 대한 이해도 부족에서 오는 의문점이었음.

위 코드의 에러메세지가 두개가 나오는데,
a에 mut 참조가 두번일어났다 + b에 mut 참조가 두번일어났다
혹시 라이프타임 헷갈리는 사람있으면, 이 예시를 보면 도움이 될 수도 있을듯.
Vec 과 struct 모두 라이프타임 때문에 부분참조와 전체참조가 충돌을 일으키는게 맞았음.

또, 참조규칙에 대해서 한가지만 더 논하자면,
위 코드에서 c.push_str부분을 c만 d로 바꾸면 에러가 발생하지 않는데,
참조자의 수명은, 스코프가 끝날때 까지가 아닌듯. 마지막 사용처를 컴파일러가 알아보고 해당 영역까지로 수명을 똑똑하게 정해주는듯.