[PATCH] D46511: [llvm-rc] Don't strictly require quotes around external file names
Adrian McCarthy via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon May 7 11:38:11 PDT 2018
amccarth added inline comments.
================
Comment at: test/tools/llvm-rc/Inputs/include.rc:3
+// Test including filenames without quotes.
+foo BITMAP bitmap.bmp
----------------
mstorsjo wrote:
> amccarth wrote:
> > mstorsjo wrote:
> > > zturner wrote:
> > > > Shouldn't we test both things?
> > > I would have guessed that there are other tests that successfully include files, but otoh the icon/cursor test is still missing its inputs. I'll update this to make it test both.
> > And perhaps some of the more interesting resource types, like RCDATA, that can take either a filename or a block of raw data.
> Well RCDATA isn't supported at all yet.
OK, but it looks like user-defined types are, and they work the same way as RCDATA.
================
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 == '/';
}
----------------
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.
Repository:
rL LLVM
https://reviews.llvm.org/D46511
More information about the llvm-commits
mailing list