Это может быть не совсем то, что вы ищете, но это один из возможных способов.
Вы могли бы написать «программу-переводчик», по сути, невероятно простой компилятор, который преобразует из того, что вы написали, эффективноВариант Go, к тому, что ожидает сам компилятор Go.
Вы можете сделать это с помощью программы, даже сценария оболочки, которая применяет регулярное выражение 's / (\ n) $ ^ \ s* {/ {\ 1 / g 'для всей программы (хотя для этого нужно будет просмотреть полную строку файла, а не разбивать ее построчно, поэтому вы не можете просто передать это выражение в качестве аргументак седу, например).Затем запишите преобразованный файл во временный и запустите на нем компилятор Go.
Этот метод имеет то преимущество, что не требует никаких изменений для самого Go, хотя недостатком является то, что ваши файлы не будут компилироваться безваш дополнительный сценарий.Если вы обычно используете Makefile, это, вероятно, нормально, но иногда может быть неудобно.