Quando si utilizza un parametro di tipo generico 'T' come chiave di una mappa o con gli operatori di confronto '==' e '!=', il vincolo del generico deve includere il vincolo predefinito 'comparable' ('[T comparable]').
GENERIC_COMPARABLE_BOUND
→
La direttiva del compilatore '//go:embed' non trova alcun file o cartella corrispondente al pattern specificato nella directory del package corrente o sottodirectory consentite.
EMBED_NO_MATCHES
→
Si verifica quando il numero di variabili a sinistra dell'operatore ':=' o '=' non corrisponde al numero di valori restituiti dalla funzione o espressione a destra (es. dimenticando di catturare la variabile di errore 'val, err := fn()').
ASSIGNMENT_COUNT_MISMATCH
→
Gli elementi estratti da una map in Go non sono indirizzabili in memoria; per modificare un campo di una struct salvata in mappa occorre salvare puntatori a struct '*MyStruct' oppure riassegnare l'intera struct.
CANNOT_ASSIGN_MAP_STRUCT
→
Compare quando un identificatore che rappresenta una variabile o campo dati viene invocato come una funzione con le parentesi tonde ('x()').
CANNOT_CALL_NON_FUNC
→
Go impone che i metodi possano essere associati unicamente a tipi definiti nello stesso package; aggiungere metodi a tipi della standard library (come 'time.Time') o tipi built-in richiede la creazione di un type alias o wrapper ('type MyTime time.Time').
NON_LOCAL_TYPE_METHOD
→
Il costrutto 'for ... := range x' supporta unicamente slice, array, mappe, stringhe, canali e interi (da Go 1.22); tentare di iterare su struct, float o puntatori scatena un errore di compilazione.
CANNOT_RANGE_OVER
→
L'operatore '&' può essere applicato solo a variabili indirizzabili: costanti letterali, valori di ritorno di funzioni e valori estratti da mappe non consentono l'estrazione diretta del puntatore.
CANNOT_TAKE_ADDRESS
→