mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-10 05:53:39 +00:00
avr: fix time.Sleep() in init code
In the early days of TinyGo, the idea of `postinit` was to enable interrupts only after initializers have run. Which kind of makes sense... except that `time.Sleep` is allowed in init code and `time.Sleep` requires interrupts to be enabled. Therefore, interrupts must be enabled while initializers are being run. This commit simply moves the enabling of interrupts to a point right before running package initializers. It also removes `runtime.postinit`, which is not necessary anymore (and was only used on AVR).
This commit is contained in:
@@ -22,7 +22,6 @@ func run() {
|
||||
initHeap()
|
||||
go func() {
|
||||
initAll()
|
||||
postinit()
|
||||
callMain()
|
||||
schedulerDone = true
|
||||
}()
|
||||
|
||||
Reference in New Issue
Block a user