Goose  Diff

Differences From Artifact [e5b43177d9]:

  • File bs/builtins/api/compiler.cpp — part of check-in [39cabb3447] at 2019-08-27 19:46:07 on branch trunk — Live values are now identified by an unique id to avoid using a fragile, non future proof way to extend the lifetime of local variables beyond their containing statements. (user: achavasse size: 7356)

To Artifact [da45e798f2]:

  • File bs/builtins/api/compiler.cpp — part of check-in [533d2ce579] at 2019-08-27 20:27:55 on branch trunk — Tuples containing only types or other tuples of types are now considered types. (user: achavasse size: 7357)

114
115
116
117
118
119
120
121

122
123
124
125
126
127
128
114
115
116
117
118
119
120

121
122
123
124
125
126
127
128







-
+







                        "#CompileFileToFunction: the expression doesn't evaluate to a constant." );
                    return PoisonValue();
                }

                auto filename = *FromValue< string >( filenameVal );

                // Validate those generic value inputs
                if( !rt.isType() )
                if( !IsType( rt ) )
                {
                    DiagnosticsManager::GetInstance().emitErrorMessage( rt.locationId(),
                        "#CompileFileToFunction: type expected.", 0 );
                    return PoisonValue();
                }

                if( CheckParamListKind( params ) != ParamListKind::Regular )