mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 12:01:16 +00:00
"optsize" did not work correctly in project.json.
This commit is contained in:
@@ -63,7 +63,7 @@ fn HashMap* HashMap.temp_init(&self, uint capacity = DEFAULT_INITIAL_CAPACITY, f
|
||||
**/
|
||||
macro HashMap* HashMap.new_init_with_key_values(&self, ..., uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAULT_LOAD_FACTOR, Allocator allocator = allocator::heap())
|
||||
{
|
||||
self.new_init(.capacity = capacity, .load_factor = load_factor, .allocator = allocator);
|
||||
self.new_init(capacity, load_factor, allocator);
|
||||
$for (var $i = 0; $i < $vacount; $i += 2)
|
||||
self.set($vaarg[$i], $vaarg[$i+1]);
|
||||
$endfor
|
||||
@@ -83,7 +83,7 @@ macro HashMap* HashMap.new_init_with_key_values(&self, ..., uint capacity = DEFA
|
||||
fn HashMap* HashMap.new_init_from_keys_and_values(&self, Key[] keys, Value[] values, uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAULT_LOAD_FACTOR, Allocator allocator = allocator::heap())
|
||||
{
|
||||
assert(keys.len == values.len);
|
||||
self.new_init(.capacity = capacity, .load_factor = load_factor, .allocator = allocator);
|
||||
self.new_init(capacity, load_factor, allocator);
|
||||
for (usz i = 0; i < keys.len; i++)
|
||||
{
|
||||
self.set(keys[i], values[i]);
|
||||
@@ -100,7 +100,7 @@ fn HashMap* HashMap.new_init_from_keys_and_values(&self, Key[] keys, Value[] val
|
||||
**/
|
||||
macro HashMap* HashMap.temp_init_with_key_values(&self, ..., uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAULT_LOAD_FACTOR)
|
||||
{
|
||||
self.temp_init(.capacity = capacity, .load_factor = load_factor);
|
||||
self.temp_init(capacity, load_factor);
|
||||
$for (var $i = 0; $i < $vacount; $i += 2)
|
||||
self.set($vaarg[$i], $vaarg[$i+1]);
|
||||
$endfor
|
||||
@@ -120,7 +120,7 @@ macro HashMap* HashMap.temp_init_with_key_values(&self, ..., uint capacity = DEF
|
||||
fn HashMap* HashMap.temp_init_from_keys_and_values(&self, Key[] keys, Value[] values, uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAULT_LOAD_FACTOR, Allocator allocator = allocator::heap())
|
||||
{
|
||||
assert(keys.len == values.len);
|
||||
self.temp_init(.capacity = capacity, .load_factor = load_factor);
|
||||
self.temp_init(capacity, load_factor);
|
||||
for (usz i = 0; i < keys.len; i++)
|
||||
{
|
||||
self.set(keys[i], values[i]);
|
||||
|
||||
@@ -54,7 +54,7 @@ fn Map temp(uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAUL
|
||||
**/
|
||||
macro Map new_init_with_key_values(..., uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAULT_LOAD_FACTOR, Allocator allocator = allocator::heap())
|
||||
{
|
||||
Map map = new(.capacity = capacity, .load_factor = load_factor, .allocator = allocator);
|
||||
Map map = new(capacity, load_factor, allocator);
|
||||
$for (var $i = 0; $i < $vacount; $i += 2)
|
||||
map.set($vaarg[$i], $vaarg[$i+1]);
|
||||
$endfor
|
||||
@@ -73,7 +73,7 @@ macro Map new_init_with_key_values(..., uint capacity = DEFAULT_INITIAL_CAPACITY
|
||||
fn Map new_init_from_keys_and_values(Key[] keys, Value[] values, uint capacity = DEFAULT_INITIAL_CAPACITY, float load_factor = DEFAULT_LOAD_FACTOR, Allocator allocator = allocator::heap())
|
||||
{
|
||||
assert(keys.len == values.len);
|
||||
Map map = new(.capacity = capacity, .load_factor = load_factor, .allocator = allocator);
|
||||
Map map = new(capacity, load_factor, allocator);
|
||||
for (usz i = 0; i < keys.len; i++)
|
||||
{
|
||||
map.set(keys[i], values[i]);
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
- Deprecated tuple / triple types.
|
||||
- Converting a slice to a vector/array would copy too little data.
|
||||
- Crash when reading an empty 'manifest.json'.
|
||||
- "optsize" did not work correctly in project.json.
|
||||
|
||||
### Stdlib changes
|
||||
- Additional init functions for hashmap.
|
||||
|
||||
@@ -219,7 +219,7 @@ static void load_into_build_target(const char *filename, JSONObject *json, const
|
||||
target->optlevel = GET_SETTING(OptimizationLevel, "optlevel", optlevels, "`none`, `less`, `more`, `max`.");
|
||||
|
||||
// Size optimization
|
||||
target->optsize = GET_SETTING(SizeOptimizationLevel, "optsize", optlevels, "`none`, `small`, `tiny`.");
|
||||
target->optsize = GET_SETTING(SizeOptimizationLevel, "optsize", optsizes, "`none`, `small`, `tiny`.");
|
||||
|
||||
static const char *opt_settings[8] = {
|
||||
[OPT_SETTING_O0] = "O0",
|
||||
|
||||
Reference in New Issue
Block a user