[PATCH] D46511: [llvm-rc] Don't strictly require quotes around external file names

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 7 11:40:00 PDT 2018


zturner added inline comments.


================
Comment at: tools/llvm-rc/ResourceScriptToken.cpp:290
   const char CurChar = Data[Pos];
-  return std::isalnum(CurChar) || CurChar == '_';
+  return std::isalnum(CurChar) || CurChar == '_' || CurChar == '.' || CurChar == '/';
 }
----------------
amccarth wrote:
> mstorsjo wrote:
> > amccarth wrote:
> > > What about backslashes?
> > > 
> > > ```
> > > 101 BITMAP "assets\foo.bmp"
> > > ```
> > > 
> > > 
> > I'm not entirely sure how that should be handled, since backslash also is an escape char (and maybe the escape behaviour is different outisde of quotes). I think I'd just ignore backslashes for now...
> My example was bad because I shouldn't have had the quotation marks.
> 
> ```
> 101 BITMAP assets\foo.bmp
> ```
> 
> Is backslash an escape character outside of strings?  The above line works in Microsoft's rc.exe, and I'm sure I've worked with code that specifies paths like that in resource scripts.
Might make sense to handle this in a separate patch that is specifically for correct handling of backslashes in resource scripts, since it sounds like there are potentially some complicated edge cases here.


Repository:
  rL LLVM

https://reviews.llvm.org/D46511





More information about the llvm-commits mailing list