dtc: cpp co-existence: allow names starting with # to be escaped

The device tree language as currently defined conflicts with the C pre-
processor in one aspect - when a property or node name begins with a #
character, a pre-processor would attempt to interpret it as a directive,
fail, and most likely error out.

This change allows a property/node name to be prefixed with \. This
prevents a pre-processor from seeing # as the first non-whitespace
character on the line, and hence prevents the conflict. \ was previously
an illegal character in property/node names, so this change is
backwards compatible. The \ is stripped from the name during parsing
by dtc.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
Stephen Warren 2012-09-27 17:11:04 -06:00 committed by Jon Loeliger
parent 45013d8619
commit 1ff3d3f8de
6 changed files with 57 additions and 3 deletions

1
tests/.gitignore vendored
View file

@ -39,6 +39,7 @@ tmp.*
/path_offset
/path_offset_aliases
/phandle_format
/propname_escapes
/references
/root_node
/rw_tree1