I'm trying to align 2 nodes (instr0 and instr1) to the left. I've followed How can I align two nodes to the left in TikZ? however it doesn't quite work as I'm getting the following error:
! Package pgf Error: No shape named instr0.west is known.
Here is a minimal reproducible example.
\documentclass{report}
\usepackage{float}
\usepackage{tikz}
\usepackage{listings}
\usetikzlibrary{shapes,arrows, decorations.pathreplacing, positioning}
\tikzstyle{instruction-bits-variable} = [rectangle split,
rectangle split horizontal,
draw,
text centered,
minimum height=1em]
\begin{document}
\begin {figure}[H]
\centering
\begin{tikzpicture}[auto]
\node [instruction-bits-variable,
rectangle split parts=7,
label={west:{instr 0:}}] (instr0) {};
\node [instruction-bits-variable,
rectangle split parts=8,
node distance = 2em,
label={west:{instr 1:}},
below of = instr0.west,
anchor=west] (instr1) {};
\end{tikzpicture}
\caption {Fixed length instructions}
\label {fig:instruction-format-components}
\end {figure}
\end{document}
It works if I remove the .west bit but the nodes are no longer aligned. I'm not sure why the .west attribute is not recognised.
Can anyone see what the issue is?

below = of instr0.west,– AndréC Oct 26 '19 at 16:11\tikzstyleis deprecated, please use\tikzset{instruction-bits-variable/.style={rectangle split, rectangle split horizontal, draw, text centered, minimum height=1em}}instead. – Oct 26 '19 at 16:30positioninglibrary, which is also deprecated, one reason being that it does not support the positioning relative to anchors. But by itself the syntax is not an error, just deprecated and does not support the same features as thepositioningsyntax does. – Oct 26 '19 at 16:37below of = instr0is deprecated and one should usebelow = of instr0when using thepositioninglibrary. – John Oct 26 '19 at 16:40below of = instr0is not depreciated and works. But notbelow of = instr0.westwhich requires the use of thepositioninglibrary. – AndréC Oct 26 '19 at 17:12