<div dir="ltr">Is "#" actually a comment in linker scripts?</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 16, 2016 at 6:29 AM, Rafael Espindola via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: rafael<br>
Date: Thu Jun 16 08:29:48 2016<br>
New Revision: 272892<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=272892&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=272892&view=rev</a><br>
Log:<br>
Add support for # comments.<br>
<br>
Modified:<br>
    lld/trunk/ELF/ScriptParser.cpp<br>
    lld/trunk/test/ELF/version-script.s<br>
<br>
Modified: lld/trunk/ELF/ScriptParser.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/ScriptParser.cpp?rev=272892&r1=272891&r2=272892&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/ScriptParser.cpp?rev=272892&r1=272891&r2=272892&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/ELF/ScriptParser.cpp (original)<br>
+++ lld/trunk/ELF/ScriptParser.cpp Thu Jun 16 08:29:48 2016<br>
@@ -85,7 +85,7 @@ std::vector<StringRef> ScriptParserBase:<br>
   }<br>
 }<br>
<br>
-// Skip leading whitespace characters or /**/-style comments.<br>
+// Skip leading whitespace characters or comments.<br>
 StringRef ScriptParserBase::skipSpace(StringRef S) {<br>
   for (;;) {<br>
     if (S.startswith("/*")) {<br>
@@ -97,6 +97,13 @@ StringRef ScriptParserBase::skipSpace(St<br>
       S = S.substr(E + 2);<br>
       continue;<br>
     }<br>
+    if (S.startswith("#")) {<br>
+      size_t E = S.find('\n', 1);<br>
+      if (E == StringRef::npos)<br>
+        E = S.size() - 1;<br>
+      S = S.substr(E + 1);<br>
+      continue;<br>
+    }<br>
     size_t Size = S.size();<br>
     S = S.ltrim();<br>
     if (S.size() == Size)<br>
<br>
Modified: lld/trunk/test/ELF/version-script.s<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/version-script.s?rev=272892&r1=272891&r2=272892&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/version-script.s?rev=272892&r1=272891&r2=272892&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/test/ELF/version-script.s (original)<br>
+++ lld/trunk/test/ELF/version-script.s Thu Jun 16 08:29:48 2016<br>
@@ -8,7 +8,9 @@<br>
 # RUN: ld.lld --version-script %t.script -shared %t.o %t2.so -o %t.so<br>
 # RUN: llvm-readobj -dyn-symbols %t.so | FileCheck --check-prefix=DSO %s<br>
<br>
-# RUN: echo "{ local: *; };" > %t3.script<br>
+# RUN: echo "# comment" > %t3.script<br>
+# RUN: echo "{ local: *; # comment" >> %t3.script<br>
+# RUN: echo -n "}; # comment" >> %t3.script<br>
 # RUN: ld.lld --version-script %t3.script -shared %t.o %t2.so -o %t3.so<br>
 # RUN: llvm-readobj -dyn-symbols %t3.so | FileCheck --check-prefix=DSO2 %s<br>
<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div>