BaseTools: Report Error if use SET in Dsc

Build tool do not support SET syntax in DSC.
If the SET statement is used in DSC, build tool just ignore it.
That behavior confused some users that
they think SET statement works in DSC like in FDF.
To avoid such confusion, build tool report ERROR
if there is "SET" statement in Dsc file.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Reviewed-by: Cc: Liming Gao <liming.gao@intel.com>
This commit is contained in:
Feng, Bob C 2019-01-02 16:09:46 +08:00
parent b85c8fb4d4
commit b8920ccc3c
1 changed files with 5 additions and 0 deletions

View File

@ -978,6 +978,11 @@ class DscParser(MetaFileParser):
self._ItemType = SectionType self._ItemType = SectionType
self._ValueList = ['', '', ''] self._ValueList = ['', '', '']
# "SET pcd = pcd_expression" syntax is not supported in Dsc file.
if self._CurrentLine.upper().strip().startswith("SET "):
EdkLogger.error('Parser', FORMAT_INVALID, '''"SET pcd = pcd_expression" syntax is not support in Dsc file''',
ExtraData=self._CurrentLine,
File=self.MetaFile, Line=self._LineIndex + 1)
self._SectionParser[SectionType](self) self._SectionParser[SectionType](self)
if self._ValueList is None: if self._ValueList is None:
continue continue