# HG changeset patch # User Michael Pavone # Date 1427076609 25200 # Node ID 1debeb21dd47abe268ede3b17296043bac6f1443 # Parent 8514a543beceac9a981b170d211812b43177c757 Allow symbol expressions in includeSystemHeader calls diff -r 8514a543bece -r 1debeb21dd47 cbackend.js --- 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.');