-
-
Notifications
You must be signed in to change notification settings - Fork 9
Home
Isaac Shelton edited this page Dec 18, 2020
·
71 revisions
- Command Line Usage
- Data Types
- Expressions
- Statements
- Functions
- Structures
- Unions
- Enums
- Aliases
- Function Aliases
- Namespaces
- Methods
- Expression Definitions
- Global Variables
- Memory Management
- Conditionals
- File Imports
- Function Pointers
- Pragma Directives
- Preprocessor
- Type Casting
- Comments
- Scope Rules
- Intrinsic Procedures
- Runtime Type Information
- Foreign Function Interface
- Standard Library
- Added namespaces
- Added initializer lists
- Added
__as__
management function - Added
~>
operator - Added polycount variables
$#N
- Added static variables
- Added alternative syntax choices
- Added better syntax for constant expressions
- Added ability to have scoped constant expressions
- Added new way to pass variadic arguments using VariadicArray
- Added function aliases
- Added
--entry
andpragma entry_point
- Added
sizeof(value)
expression - Reduced size of resulting executable
- Made switch statement cases less picky
- Added built-in compile-checks for
printf(String, args ...)
- Added simple unions
- Added polymorph that matches convertable types
$~T
of$T
- Added ability to use
++
and--
on floating point types - Changed integer values of unspecified type to collapse to type
long
instead ofint
- Added
#define
- Added cross-compilation for Windows from MacOS
- Changed warnings to print code fragments
- Added
--short-warnings
andpragma short_warnings
to disable code fragments for warnings - Added
#error
and#warning
- Added
-Werror
andpragma warn_as_error
to treat compiler warnings as errors - Added
null
meta value - Added
--ignore-unused
andpragma ignore_unused
to ignore unused variable warnings - Added prototype REPL
- Added
exhaustive
keyword to force switch statements to account for all values of an enum - Added ability to specify default argument values
- Added
.size
field toAnyType
types - Added support for C-style variadic arguments via
va_start
,va_end
,va_arg
andva_copy
- Added
__access__
management function - Added
__stdlib__
dynamic compile-time meta variable - Added
-std=2.4
andpragma default_stdlib
to set default standard library - Added
import my_component
syntax to import from the standard library - Improved
--version
human friendliness - Added
--ignore-*
compiler flags andpragma ignore_
pragma directives - Improved compilation performance
- Improved error and warning message format
- Fix some bugs