diff options
Diffstat (limited to 'src/comp/front/parser.rs')
| -rw-r--r-- | src/comp/front/parser.rs | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/comp/front/parser.rs b/src/comp/front/parser.rs index 666df9d8eb3..d3a8fa9a329 100644 --- a/src/comp/front/parser.rs +++ b/src/comp/front/parser.rs @@ -1992,26 +1992,20 @@ fn parse_native_mod_items(&parser p, &str native_name, items=items); } -fn default_native_lib_naming(session::session sess) - -> rec(str prefix, str suffix) { +fn default_native_name(session::session sess, str id) -> str { alt (sess.get_targ_cfg().os) { case (session::os_win32) { - ret rec(prefix="", suffix=".dll"); + ret id + ".dll"; } case (session::os_macos) { - ret rec(prefix="lib", suffix=".dylib"); + ret "lib" + id + ".dylib"; } case (session::os_linux) { - ret rec(prefix="lib", suffix=".so"); + ret "lib" + id + ".so"; } } } -fn default_native_name(session::session sess, str id) -> str { - auto n = default_native_lib_naming(sess); - ret n.prefix + id + n.suffix; -} - fn parse_item_native_mod(&parser p) -> @ast::item { auto lo = p.get_last_lo_pos(); auto abi = ast::native_abi_cdecl; @@ -2200,7 +2194,7 @@ fn parse_meta_item(&parser p) -> @ast::meta_item { case (token::LIT_STR(?s)) { auto hi = p.get_hi_pos(); p.bump(); - ret @spanned(lo, hi, rec(key = ident, + ret @spanned(lo, hi, rec(name = ident, value = p.get_str(s))); } case (_) { |
