Mercurial > repos > tabletprog
changeset 320:1debeb21dd47
Allow symbol expressions in includeSystemHeader calls
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 22 Mar 2015 19:10:09 -0700 |
parents | 8514a543bece |
children | 3edd0169311a |
files | cbackend.js |
diffstat | 1 files changed, 7 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/cbackend.js Fri Mar 20 19:21:22 2015 -0700 +++ b/cbackend.js Sun Mar 22 19:10:09 2015 -0700 @@ -666,7 +666,13 @@ lines: messages[i].args[2].toCLines(vars, true) }); } else if(msgname == 'includeSystemHeader' && messages[i].args.length == 1) { - me.addInclude("<" + messages[i].args[0].val + ">"); + if (messages[i].args[0] instanceof strlit) { + me.addInclude("<" + messages[i].args[0].val + ">"); + } else if(messages[i].args[0] instanceof symbol) { + me.addInclude(messages[i].args[0].name); + } else { + throw new Error('Argument to includeSystemHeader must be a string literal or symbol'); + } } else { throw new Error('Only import and import:from calls allowed in object context. ' + messages[i].name + 'with ' + messages[i].args.length + ' arguments found instead.');