diff options
author | John Hodge <tpg@ucc.asn.au> | 2017-04-13 15:35:06 +0800 |
---|---|---|
committer | John Hodge <tpg@ucc.asn.au> | 2017-04-13 15:35:06 +0800 |
commit | ffaaf8047e615206e5eb27097a0b6e669f521b96 (patch) | |
tree | 79047670e7d1e83a986cdead3730beb4eae4da2d | |
parent | 285305b6fb1cd94a47332811fb34f599af8ad795 (diff) | |
download | mrust-ffaaf8047e615206e5eb27097a0b6e669f521b96.tar.gz |
Expand - Tweaks to test harness
-rw-r--r-- | Makefile | 15 | ||||
-rw-r--r-- | src/expand/format_args.cpp | 1 | ||||
-rw-r--r-- | src/expand/mod.cpp | 2 | ||||
-rw-r--r-- | src/main.cpp | 5 |
4 files changed, 20 insertions, 3 deletions
@@ -146,7 +146,20 @@ output/lib%.hir: $(RUSTCSRC)src/lib%/src/lib.rs $(RUSTCSRC) $(BIN) $(DBG) $(ENV_$@) $(BIN) $< -o $@ $(RUST_FLAGS) $(ARGS_$@) $(PIPECMD) # # HACK: Work around gdb returning success even if the program crashed @test -e $@ - +output/lib%-test: $(RUSTCSRC)src/lib%/lib.rs $(RUSTCSRC) $(BIN) + @echo "--- [MRUSTC] --test -o $@" + @mkdir -p output/ + @rm -f $@ + $(DBG) $(ENV_$@) $(BIN) --test $< -o $@ -L output/libs $(RUST_FLAGS) $(ARGS_$@) $(PIPECMD) +# # HACK: Work around gdb returning success even if the program crashed + @test -e $@ +output/lib%-test: $(RUSTCSRC)src/lib%/src/lib.rs $(RUSTCSRC) $(BIN) + @echo "--- [MRUSTC] $@" + @mkdir -p output/ + @rm -f $@ + $(DBG) $(ENV_$@) $(BIN) --test $< -o $@ -L output/libs $(RUST_FLAGS) $(ARGS_$@) $(PIPECMD) +# # HACK: Work around gdb returning success even if the program crashed + @test -e $@ fcn_extcrate = $(patsubst %,output/lib%.hir,$(1)) fn_getdeps = \ diff --git a/src/expand/format_args.cpp b/src/expand/format_args.cpp index 0f881a6e..89503e0c 100644 --- a/src/expand/format_args.cpp +++ b/src/expand/format_args.cpp @@ -251,6 +251,7 @@ namespace { if( *s == '0' ) { args.zero_pad = true; + args.align_char = '0'; s ++; } else { diff --git a/src/expand/mod.cpp b/src/expand/mod.cpp index f152b1ab..df0a26f2 100644 --- a/src/expand/mod.cpp +++ b/src/expand/mod.cpp @@ -67,7 +67,7 @@ void Expand_Attrs(/*const */::AST::MetaItems& attrs, AttrStage stage, ::std::fu } void Expand_Attrs(::AST::MetaItems& attrs, AttrStage stage, ::AST::Crate& crate, const ::AST::Path& path, ::AST::Module& mod, ::AST::Item& item) { - Expand_Attrs(attrs, stage, [&](const auto& sp, const auto& d, const auto& a){ d.handle(sp, a, crate, path, mod, item); }); + Expand_Attrs(attrs, stage, [&](const auto& sp, const auto& d, const auto& a){ if(!item.is_None()) d.handle(sp, a, crate, path, mod, item); }); } void Expand_Attrs(::AST::MetaItems& attrs, AttrStage stage, ::AST::Crate& crate, ::AST::Module& mod, ::AST::ImplDef& impl) { diff --git a/src/main.cpp b/src/main.cpp index 0c181c29..2f392bb7 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -224,7 +224,6 @@ int main(int argc, char *argv[]) if( params.test_harness ) { - // TODO: Generate harness main (and override the mrustc-main lang item) Expand_TestHarness(crate); } @@ -273,6 +272,10 @@ int main(int argc, char *argv[]) } } crate.m_crate_name = crate_name; + if( params.test_harness ) + { + crate.m_crate_name += "$test"; + } if( params.outfile == "" ) { switch( crate.m_crate_type ) |